Browse Source

Merge pull request #6028

1d5b47a nLastTry is only used for addrman entries (Pieter Wuille)
0.13
Wladimir J. van der Laan 10 years ago
parent
commit
b9311fb631
No known key found for this signature in database
GPG Key ID: 74810B012346C9A6
  1. 4
      src/addrman.cpp
  2. 13
      src/addrman.h
  3. 2
      src/net.cpp
  4. 1
      src/protocol.cpp
  5. 3
      src/protocol.h

4
src/addrman.cpp

@ -331,10 +331,10 @@ void CAddrMan::Attempt_(const CService& addr, int64_t nTime) @@ -331,10 +331,10 @@ void CAddrMan::Attempt_(const CService& addr, int64_t nTime)
info.nAttempts++;
}
CAddress CAddrMan::Select_()
CAddrInfo CAddrMan::Select_()
{
if (size() == 0)
return CAddress();
return CAddrInfo();
// Use a 50% chance for choosing between tried and new table entries.
if (nTried > 0 && (nNew == 0 || GetRandInt(2) == 0)) {

13
src/addrman.h

@ -22,6 +22,10 @@ @@ -22,6 +22,10 @@
*/
class CAddrInfo : public CAddress
{
public:
//! last try whatsoever by us (memory only)
int64_t nLastTry;
private:
//! where knowledge about this address first came from
CNetAddr source;
@ -29,9 +33,6 @@ private: @@ -29,9 +33,6 @@ private:
//! last successful connection by us
int64_t nLastSuccess;
//! last try whatsoever by us:
// int64_t CAddress::nLastTry
//! connection attempts since last successful attempt
int nAttempts;
@ -231,7 +232,7 @@ protected: @@ -231,7 +232,7 @@ protected:
//! Select an address to connect to.
//! nUnkBias determines how much to favor new addresses over tried ones (min=0, max=100)
CAddress Select_();
CAddrInfo Select_();
#ifdef DEBUG_ADDRMAN
//! Perform consistency check. Returns an error code or zero.
@ -533,9 +534,9 @@ public: @@ -533,9 +534,9 @@ public:
* Choose an address to connect to.
* nUnkBias determines how much "new" entries are favored over "tried" ones (0-100).
*/
CAddress Select()
CAddrInfo Select()
{
CAddress addrRet;
CAddrInfo addrRet;
{
LOCK(cs);
Check();

2
src/net.cpp

@ -1221,7 +1221,7 @@ void ThreadOpenConnections() @@ -1221,7 +1221,7 @@ void ThreadOpenConnections()
int nTries = 0;
while (true)
{
CAddress addr = addrman.Select();
CAddrInfo addr = addrman.Select();
// if we selected an invalid address, restart
if (!addr.IsValid() || setConnected.count(addr.GetGroup()) || IsLocal(addr))

1
src/protocol.cpp

@ -89,7 +89,6 @@ void CAddress::Init() @@ -89,7 +89,6 @@ void CAddress::Init()
{
nServices = NODE_NETWORK;
nTime = 100000000;
nLastTry = 0;
}
CInv::CInv()

3
src/protocol.h

@ -116,9 +116,6 @@ public: @@ -116,9 +116,6 @@ public:
// disk and network only
unsigned int nTime;
// memory only
int64_t nLastTry;
};
/** inv message data */

Loading…
Cancel
Save