fix(enginenetx): stabilize happy eyeballs algorithm #1301
Merged
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.
Use 1s as the base delay (which leads to simpler computations)
Acknowledge that with very large indexes we still need to produce reasonable positive values, while the current algorithm breaks for indexes large than
63
Acknowledge that, after incrementing exponentially for a while, it makes sense to continue in a flat fashion, where we increment linearly, while the current algorithm was aiming to always return 30s, which means several attempts would actually run in parallel
Acknowledge that we should use the same zero for all timings rather than having a goroutine dependent zero
Acknowledge that for now we don't need to mock
time.Now
Part of ooni/probe#2531