internal/contour: remove holdoffmaxdelay forced update #2285
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.
Updates #2275
The holdoff logic is subtle, and under tested. To address both of these
issues I'm going to make the fix for #2275 in several stages so we have
a chance to git bisect.
This first change removes the explicit force code path when
holdoffmaxdelay is exceeded. The logic remains the same, if
holdoffmaxdelay is exceeded a delayed update will occur, however after
this change rather than their being a specific code path for the forced
update we set the timer delay to zero, which will make the <-pending
channel ready shortly afterwards.
Strictly speaking a stream of <-op updates can trump a <-pending which
can add further delay to rebuilding the dag but in practice this is
unlikely to occur indefinitely;
them pseudo randomly.
the DAG rebuild is delayed, this is the point of 2275.
A future PR will refactor the delay calculation so that we can test it
in isolation.
Signed-off-by: Dave Cheney [email protected]