1
0
mirror of https://github.com/PurpleI2P/i2pd.git synced 2025-01-22 04:04:16 +00:00

clean-up from obsolete RouterInfos

This commit is contained in:
orignal 2014-01-22 20:19:39 -05:00
parent 2b87a58685
commit 6c6d013a76

View File

@ -207,6 +207,8 @@ namespace data
}; };
int count = 0, deletedCount = 0; int count = 0, deletedCount = 0;
auto total = m_RouterInfos.size ();
uint64_t ts = i2p::util::GetMillisecondsSinceEpoch ();
for (auto it: m_RouterInfos) for (auto it: m_RouterInfos)
{ {
if (it.second->IsUpdated ()) if (it.second->IsUpdated ())
@ -216,13 +218,20 @@ namespace data
it.second->SetUpdated (false); it.second->SetUpdated (false);
count++; count++;
} }
else if (it.second->IsUnreachable ()) else
{ {
if (boost::filesystem::exists (GetFilePath (directory, it.second))) // RouterInfo expires in 72 hours if more than 300
{ if (total > 300 && ts > it.second->GetTimestamp () + 3*24*3600*1000LL) // 3 days
boost::filesystem::remove (GetFilePath (directory, it.second)); it.second->SetUnreachable (true);
deletedCount++;
} if (it.second->IsUnreachable ())
{
if (boost::filesystem::exists (GetFilePath (directory, it.second)))
{
boost::filesystem::remove (GetFilePath (directory, it.second));
deletedCount++;
}
}
} }
} }
if (count > 0) if (count > 0)