mirror of
https://github.com/tendermint/tendermint.git
synced 2026-09-21 07:24:36 +00:00
some comments
This commit is contained in:
+13
-4
@@ -684,8 +684,8 @@ func (a *AddrBook) calcOldBucket(addr *NetAddress) int {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Return a string representing the network group of this address.
|
// Return a string representing the network group of this address.
|
||||||
// This is the /16 for IPv6, the /32 (/36 for he.net) for IPv6, the string
|
// This is the /16 for IPv4, the /32 (/36 for he.net) for IPv6, the string
|
||||||
// "local" for a local address and the string "unroutable for an unroutable
|
// "local" for a local address and the string "unroutable" for an unroutable
|
||||||
// address.
|
// address.
|
||||||
func (a *AddrBook) groupKey(na *NetAddress) string {
|
func (a *AddrBook) groupKey(na *NetAddress) string {
|
||||||
if a.routabilityStrict && na.Local() {
|
if a.routabilityStrict && na.Local() {
|
||||||
@@ -811,8 +811,8 @@ func (ka *knownAddress) removeBucketRef(bucketIdx int) int {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
An address is bad if the address in question has not been tried in the last
|
An address is bad if the address in question is a New address, has not been tried in the last
|
||||||
minute and meets one of the following criteria:
|
minute, and meets one of the following criteria:
|
||||||
|
|
||||||
1) It claims to be from the future
|
1) It claims to be from the future
|
||||||
2) It hasn't been seen in over a month
|
2) It hasn't been seen in over a month
|
||||||
@@ -821,8 +821,15 @@ func (ka *knownAddress) removeBucketRef(bucketIdx int) int {
|
|||||||
|
|
||||||
All addresses that meet these criteria are assumed to be worthless and not
|
All addresses that meet these criteria are assumed to be worthless and not
|
||||||
worth keeping hold of.
|
worth keeping hold of.
|
||||||
|
|
||||||
|
XXX: so a good peer needs us to call MarkGood before the conditions above are reached!
|
||||||
*/
|
*/
|
||||||
func (ka *knownAddress) isBad() bool {
|
func (ka *knownAddress) isBad() bool {
|
||||||
|
// Is Old --> good
|
||||||
|
if ka.BucketType == bucketTypeOld {
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
|
||||||
// Has been attempted in the last minute --> good
|
// Has been attempted in the last minute --> good
|
||||||
if ka.LastAttempt.Before(time.Now().Add(-1 * time.Minute)) {
|
if ka.LastAttempt.Before(time.Now().Add(-1 * time.Minute)) {
|
||||||
return false
|
return false
|
||||||
@@ -830,6 +837,7 @@ func (ka *knownAddress) isBad() bool {
|
|||||||
|
|
||||||
// Too old?
|
// Too old?
|
||||||
// XXX: does this mean if we've kept a connection up for this long we'll disconnect?!
|
// XXX: does this mean if we've kept a connection up for this long we'll disconnect?!
|
||||||
|
// and shouldn't it be .Before ?
|
||||||
if ka.LastAttempt.After(time.Now().Add(-1 * numMissingDays * time.Hour * 24)) {
|
if ka.LastAttempt.After(time.Now().Add(-1 * numMissingDays * time.Hour * 24)) {
|
||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
@@ -840,6 +848,7 @@ func (ka *knownAddress) isBad() bool {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Hasn't succeeded in too long?
|
// Hasn't succeeded in too long?
|
||||||
|
// XXX: does this mean if we've kept a connection up for this long we'll disconnect?!
|
||||||
if ka.LastSuccess.Before(time.Now().Add(-1*minBadDays*time.Hour*24)) &&
|
if ka.LastSuccess.Before(time.Now().Add(-1*minBadDays*time.Hour*24)) &&
|
||||||
ka.Attempts >= maxFailures {
|
ka.Attempts >= maxFailures {
|
||||||
return true
|
return true
|
||||||
|
|||||||
Reference in New Issue
Block a user