Add a Configurable Bootstrap Timeout for DHT Discovery #4912
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This pull request introduces a configurable timeout for the DHT bootstrap process, enhancing the flexibility and observability of peer discovery in the network. A new
DiscBootstrapTimeoutfield has been added to both the host and configuration structures, with a default value set to 30 seconds. This allows operators to better tune the duration of the DHT bootstrap according to their environment or performance needs.To support this configurability, a new CLI flag
--p2p.disc.bootstrap-timeouthas been registered. This flag is now part of the default configuration and can be set via the command line, giving users a straightforward way to adjust the timeout without modifying the codebase. Additionally, the bootstrap duration is now logged, providing useful diagnostics for monitoring and debugging DHT discovery behavior.The PR also includes a cleanup in the stream manager’s peer discovery logic. Specifically, an unnecessary goroutine was removed to simplify the control flow. This change reduces complexity and improves the maintainability of the peer discovery process without altering its functionality.