Browse Source

Remember the last successful poll time for each node

pull/1/head
Luke Dashjr 11 years ago
parent
commit
c4930f3312
  1. 6
      db.cpp
  2. 7
      db.h

6
db.cpp

@ -11,7 +11,11 @@ void CAddrInfo::Update(bool good) { @@ -11,7 +11,11 @@ void CAddrInfo::Update(bool good) {
lastTry = now;
ourLastTry = now;
total++;
if (good) success++;
if (good)
{
success++;
ourLastSuccess = now;
}
stat2H.Update(good, age, 3600*2);
stat8H.Update(good, age, 3600*8);
stat1D.Update(good, age, 3600*24);

7
db.h

@ -61,6 +61,7 @@ private: @@ -61,6 +61,7 @@ private:
uint64_t services;
int64 lastTry;
int64 ourLastTry;
int64 ourLastSuccess;
int64 ignoreTill;
CAddrStat stat2H;
CAddrStat stat8H;
@ -73,7 +74,7 @@ private: @@ -73,7 +74,7 @@ private:
int success;
std::string clientSubVersion;
public:
CAddrInfo() : services(0), lastTry(0), ourLastTry(0), ignoreTill(0), clientVersion(0), blocks(0), total(0), success(0) {}
CAddrInfo() : services(0), lastTry(0), ourLastTry(0), ourLastSuccess(0), ignoreTill(0), clientVersion(0), blocks(0), total(0), success(0) {}
CAddrReport GetReport() const {
CAddrReport ret;
@ -126,7 +127,7 @@ public: @@ -126,7 +127,7 @@ public:
friend class CAddrDb;
IMPLEMENT_SERIALIZE (
unsigned char version = 3;
unsigned char version = 4;
READWRITE(version);
READWRITE(ip);
READWRITE(services);
@ -152,6 +153,8 @@ public: @@ -152,6 +153,8 @@ public:
READWRITE(clientSubVersion);
if (version >= 3)
READWRITE(blocks);
if (version >= 4)
READWRITE(ourLastSuccess);
}
)
};

Loading…
Cancel
Save