forked from LBRYCommunity/lbry-sdk
add rpcAttempts and replacementCacheSize constants
This commit is contained in:
parent
fcaca05a81
commit
2a47385b62
2 changed files with 8 additions and 5 deletions
|
@ -21,9 +21,15 @@ alpha = 3
|
|||
#: Maximum number of contacts stored in a bucket; this should be an even number
|
||||
k = 8
|
||||
|
||||
#: Maximum number of contacts stored in the replacement cache
|
||||
replacementCacheSize = 8
|
||||
|
||||
#: Timeout for network operations (in seconds)
|
||||
rpcTimeout = 5
|
||||
|
||||
# number of rpc attempts to make before a timeout results in the node being removed as a contact
|
||||
rpcAttempts = 5
|
||||
|
||||
# Delay between iterations of iterative node lookups (for loose parallelism) (in seconds)
|
||||
iterativeLookupDelay = rpcTimeout / 2
|
||||
|
||||
|
|
|
@ -320,10 +320,7 @@ class OptimizedTreeRoutingTable(TreeRoutingTable):
|
|||
self._replacementCache[bucketIndex] = []
|
||||
if contact in self._replacementCache[bucketIndex]:
|
||||
self._replacementCache[bucketIndex].remove(contact)
|
||||
# TODO: Using k to limit the size of the contact
|
||||
# replacement cache - maybe define a separate value for
|
||||
# this in constants.py?
|
||||
elif len(self._replacementCache[bucketIndex]) >= constants.k:
|
||||
elif len(self._replacementCache[bucketIndex]) >= constants.replacementCacheSize:
|
||||
self._replacementCache[bucketIndex].pop(0)
|
||||
self._replacementCache[bucketIndex].append(contact)
|
||||
|
||||
|
@ -340,7 +337,7 @@ class OptimizedTreeRoutingTable(TreeRoutingTable):
|
|||
except ValueError:
|
||||
return
|
||||
contact.failedRPCs += 1
|
||||
if contact.failedRPCs >= 5:
|
||||
if contact.failedRPCs >= constants.rpcAttempts:
|
||||
self._buckets[bucketIndex].removeContact(contactID)
|
||||
# Replace this stale contact with one from our replacement cache, if we have any
|
||||
if bucketIndex in self._replacementCache:
|
||||
|
|
Loading…
Reference in a new issue