Skip to content

Commit

Permalink
[refactor] [addrman] Update constant comments
Browse files Browse the repository at this point in the history
Co-authored-by: Amiti Uttarwar <[email protected]>
  • Loading branch information
jnewbery and amitiuttarwar committed Aug 26, 2021
1 parent af9638a commit 85b15dd
Show file tree
Hide file tree
Showing 2 changed files with 13 additions and 23 deletions.
30 changes: 10 additions & 20 deletions src/addrman.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -15,37 +15,27 @@
#include <unordered_map>
#include <unordered_set>

//! over how many buckets entries with tried addresses from a single group (/16 for IPv4) are spread
/** Over how many buckets entries with tried addresses from a single group (/16 for IPv4) are spread */
static constexpr uint32_t ADDRMAN_TRIED_BUCKETS_PER_GROUP{8};

//! over how many buckets entries with new addresses originating from a single group are spread
/** Over how many buckets entries with new addresses originating from a single group are spread */
static constexpr uint32_t ADDRMAN_NEW_BUCKETS_PER_SOURCE_GROUP{64};

//! in how many buckets for entries with new addresses a single address may occur
/** Maximum number of times an address can be added to the new table */
static constexpr int32_t ADDRMAN_NEW_BUCKETS_PER_ADDRESS{8};

//! how old addresses can maximally be
/** How old addresses can maximally be */
static constexpr int64_t ADDRMAN_HORIZON_DAYS{30};

//! after how many failed attempts we give up on a new node
/** After how many failed attempts we give up on a new node */
static constexpr int32_t ADDRMAN_RETRIES{3};

//! how many successive failures are allowed ...
/** How many successive failures are allowed ... */
static constexpr int32_t ADDRMAN_MAX_FAILURES{10};

//! ... in at least this many days
/** ... in at least this many days */
static constexpr int64_t ADDRMAN_MIN_FAIL_DAYS{7};

//! how recent a successful connection should be before we allow an address to be evicted from tried
/** How recent a successful connection should be before we allow an address to be evicted from tried */
static constexpr int64_t ADDRMAN_REPLACEMENT_HOURS{4};

//! the maximum number of tried addr collisions to store
/** The maximum number of tried addr collisions to store */
static constexpr size_t ADDRMAN_SET_TRIED_COLLISION_SIZE{10};

//! the maximum time we'll spend trying to resolve a tried table collision, in seconds
/** The maximum time we'll spend trying to resolve a tried table collision, in seconds */
static constexpr int64_t ADDRMAN_TEST_WINDOW{40*60}; // 40 minutes


int CAddrInfo::GetTriedBucket(const uint256& nKey, const std::vector<bool> &asmap) const
{
uint64_t hash1 = (CHashWriter(SER_GETHASH, 0) << nKey << GetKey()).GetCheapHash();
Expand Down
6 changes: 3 additions & 3 deletions src/addrman.h
Original file line number Diff line number Diff line change
Expand Up @@ -131,15 +131,15 @@ class CAddrInfo : public CAddress
* configuration option will introduce (expensive) consistency checks for the entire data structure.
*/

//! total number of buckets for tried addresses
/** Total number of buckets for tried addresses */
static constexpr int32_t ADDRMAN_TRIED_BUCKET_COUNT_LOG2{8};
static constexpr int ADDRMAN_TRIED_BUCKET_COUNT{1 << ADDRMAN_TRIED_BUCKET_COUNT_LOG2};

//! total number of buckets for new addresses
/** Total number of buckets for new addresses */
static constexpr int32_t ADDRMAN_NEW_BUCKET_COUNT_LOG2{10};
static constexpr int ADDRMAN_NEW_BUCKET_COUNT{1 << ADDRMAN_NEW_BUCKET_COUNT_LOG2};

//! maximum allowed number of entries in buckets for new and tried addresses
/** Maximum allowed number of entries in buckets for new and tried addresses */
static constexpr int32_t ADDRMAN_BUCKET_SIZE_LOG2{6};
static constexpr int ADDRMAN_BUCKET_SIZE{1 << ADDRMAN_BUCKET_SIZE_LOG2};

Expand Down

0 comments on commit 85b15dd

Please sign in to comment.