-
Notifications
You must be signed in to change notification settings - Fork 285
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat(core-p2p): Fetch list of peers from at least a few others #2152
Conversation
Previously we would fetch the list of peers from a single other peer and be satisfied with it as long as our list of peers satisfies hasMinimumPeers(). With this change we will query at least 4 peers and combine their lists. This will help in getting a better view of the network and all of its peers in times of splits and bad network connectivity.
@air1one @faustbrian @supaiku0 - please review this in the next few days. Be sure to explicitly select labels so I know what's going on. If no reviewer appears after a week, a reminder will be sent out. |
Codecov Report
@@ Coverage Diff @@
## develop #2152 +/- ##
===========================================
+ Coverage 79.47% 79.49% +0.02%
===========================================
Files 331 331
Lines 7922 7925 +3
Branches 1091 1117 +26
===========================================
+ Hits 6296 6300 +4
+ Misses 1593 1592 -1
Partials 33 33
Continue to review full report at Codecov.
|
Resolves #2131 |
* ArkEcosystem/core/2.3: chore: move core-graphql to the deprecated folder (#2169) refactor(crypto): benchmarks (#2167) refactor: replace micromatch with nanomatch and remove heavy deps (#2165) feat(crypto): increase vendor field length to 255 bytes (#2159) feat(core-api): search delegates by usernames (#2143) feat(core-logger-pino): initial implementation (#2134) perf(crypto): integrate bcrypto (#2158) feat(core): ask for process restarts after updating (#2155) refactor(core): replace pm2 with process manager (#2154) refactor(core): require the user to take action for updates (#2153) feat(core-p2p): Fetch list of peers from at least a few others (#2152) refactor(core): more robust check for ensureDefaults (#2151) fix(core): ensure file and defaults before reading fix(core): return correct suffix for core:restart command (#2150) fix(core-database): properly sort BigNumber values (#2144) feat(core): configuration and channel support for the CLI (#2145) feat(core): merge core-snapshot-cli commands into core (#2149) fix(core-api): pass query to findAllByVote method (#2142) feat(core-p2p): Validate GET replies from other peers (#2102) chore(release): 2.2.0-beta.7 (#2141) fix(core-blockchain): stuck at not ready to accept new block (#2139) refactor(core-p2p): Improve selection of peer for downloading blocks (#2137) fix(core): overwrite the config path if an env variable is provided (#2140) fix(core): do not ignore the network flag in parseWithNetwork (#2138) chore(release): 2.2.0-beta.6 (#2136) refactor(core-container): throw an error if the peers or plugins file are missing (#2135) chore(release): 2.2.0-beta.5 (#2132) refactor(core-p2p): reduce logging noise (#2129) misc(core-p2p): remove superfluous log message (#2128) refactor(core-p2p): Improve fork handling in updatePeersOnMissingBlocks (#2125)
Previously we would fetch the list of peers from a single other peer and
be satisfied with it as long as our list of peers satisfies
hasMinimumPeers().
With this change we will query at least 4 peers and combine their
lists. This will help in getting a better view of the network and all of
its peers in times of splits and bad network connectivity.
Proposed changes
Types of changes
Checklist