Fix server keep alive to send more than one ping #2315
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.
When enabling HTTP2 server keep alive, only the first ping is sent after the configured interval.
Afterwards, no more pings are sent.
More details on this issue: #2310
The suggested solution checks if
ping_sent_at
has already been cleared byPonger::poll
whenKeepAliveState::PingSent
state is active. A test is added to make sure the server produces more than one ping when configured to do so.