aboutsummaryrefslogtreecommitdiff
path: root/src/banman.h
diff options
context:
space:
mode:
authorfurszy <matiasfurszyfer@protonmail.com>2023-12-22 10:32:32 -0300
committerfurszy <matiasfurszyfer@protonmail.com>2024-01-23 10:25:05 -0300
commit6ed53602ac7c565273b5722de167cb2569a0e381 (patch)
tree1003316de6138ce4028f04bb860dafcc00b3452e /src/banman.h
parent9f36e591c551ec2e58a6496334541bfdae8fdfe5 (diff)
downloadbitcoin-6ed53602ac7c565273b5722de167cb2569a0e381.tar.xz
net: peer manager, dynamically adjust desirable services flag
Introduces functionality to detect when limited peers connections are desirable or not. Ensuring that the new connections desirable services flags stay relevant throughout the software's lifecycle. (Unlike the previous approach, where once the validation IBD flag was set, the desirable services flags remained constant forever). This will let us recover from stalling scenarios where the node had successfully synced, but subsequently dropped connections and remained inactive for a duration longer than the limited peers threshold (the timeframe within which limited peers can provide blocks). Then, upon reconnection to the network, the node may end up only establishing connections with limited peers, leading to an inability to synchronize the chain. This also fixes a possible limited peers threshold violation during IBD, when the user configures `-maxtipage` further than the BIP159's limits. This rule violation could lead to sync delays and, in the worst-case scenario, trigger the same post-IBD stalling scenario (mentioned above) but during IBD.
Diffstat (limited to 'src/banman.h')
0 files changed, 0 insertions, 0 deletions