Skip to content

fix(discovery): fix hanging if some peers don't respond

Georgy Moshkin requested to merge fix/parallel-discovery into master

Previously the discovery algorithm would try to reach each known peer sequentially requiring each consequent request to succeed until the next one can be attempted. This would not work in some cases (see test in previous commit).

So the new algorithm instead makes a single attempt to reach each peer within a round, and if some failed they're retried in the next round of requests. This allows to overall discovery to succeed in cases when some of the initial peers never respond.

Closes #54 (closed)

Merge request reports