Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

HTTP/2 streams closed due to client window update delay #18674

Closed
wtlucy opened this issue Sep 22, 2021 · 1 comment · Fixed by #18715
Closed

HTTP/2 streams closed due to client window update delay #18674

wtlucy opened this issue Sep 22, 2021 · 1 comment · Fixed by #18715
Assignees
Labels
in:Transport release bug This bug is present in a released version of Open Liberty release:210011 team:Sirius

Comments

@wtlucy
Copy link
Contributor

wtlucy commented Sep 22, 2021

Describe the bug
Liberty's HTTP/2 implementation enforces a non-configurable timeout for pending writes that are waiting for a window update from the client. That is, when a stream cannot write data due to a window size limitation, then the stream will only wait for the timeout period for a window update to arrive from the client - and once that deadline elapses the stream is reset. Currently this timeout is ~8s, which is insufficient for some scenarios - Liberty should wait for at least the configured writeTimeout period.

//change to 8192 to track better if this is occurring
private final int MAX_TIME_TO_WAIT_FOR_WINDOW_UPDATE_MS = 8192;

Steps to Reproduce
On a HTTP/2 connection with Liberty, allow the write window for a stream to drop below 0, and don't send a WINDOW_UPDATE for that stream. The stream will get reset by Liberty after ~8s.

Expected behavior
Streams waiting on write window updates should be closed less aggressively by Liberty, and streams should not get closed before the writeTimeout period has elapsed.

Diagnostic information:

  • OpenLiberty Version: n/a
  • Affected feature(s): HTTP/2
  • Java Version: n/a

Additional context
n/a

@wtlucy wtlucy added in:Transport release bug This bug is present in a released version of Open Liberty team:Sirius labels Sep 22, 2021
@wtlucy wtlucy self-assigned this Sep 22, 2021
@wtlucy wtlucy added this to General Issues in Web Tier Team via automation Sep 22, 2021
@pnicolucci
Copy link
Member

@wtlucy please update the description of this release bug so that it follows/conforms to the Bug report template

@wtlucy wtlucy closed this as completed Oct 7, 2021
Web Tier Team automation moved this from General Issues to Completed Tasks Oct 7, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
in:Transport release bug This bug is present in a released version of Open Liberty release:210011 team:Sirius
Projects
Archived in project
Web Tier Team
  
Completed Tasks
Development

Successfully merging a pull request may close this issue.

3 participants