-
Notifications
You must be signed in to change notification settings - Fork 566
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
HTTP2 FlowControl Window depleted #9589
Comments
I believe that this could be related to this bug as well: #9122 |
Hi, @AlfredoG87, can you please share what client you have used for the step: |
In the video shared you can see I used |
Sorry I can't download the video |
np, let me know if you know any more info. should be really straight forward to replicate. do you want me to convert the video to a gif or something else? |
I can reproduce it now with postman, thx for the video. Good news is that it is already fixed by #9520 (splitting large frames) issue. Bad news is it is not released yet. |
ohh no worries, just knowing that is already fixed is great news!! 💯 just to plan accordingly, do you have an approximate ETA of when we can see that fix released? Lastly, want me to close the issue? |
Keep it open, I have added it to 4.2.0 milestone, and we will consult internally if we can release 4.1.x bugfix earlier |
Any chance you could try out the fix from a snapshot build? |
Yes, I can, can you provide the link to the snapshot build? please Update: I think I found it is just |
I don't think we have such snapshot build(4.2.0-SNAPSHOT), but it should be easy to build with JDK21+ cd /tmp && git clone git@github.com:helidon-io/helidon.git && cd helidon && mvn install -DskipTests |
Perfect, I can manage that! |
Hi @danielkec, I've been working with @AlfredoG87 to troubleshoot this issue on our side. I was able to confirm the inbound fixes in |
@danielkec Thank you for your help!! 💯 |
@m0mus just one question, has this already been release? 4.1.5 or when is it scheduled to be released in 4.1.6? |
Hi, sorry for not notifying you earlier. It will be part of 4.1.6 possibly tomorrow |
No problem, I just asked since saw it was closed! 👍 |
Given several minutes streaming data to a client, Helidon 4.x Http2 Outbound Flow Control always ends up with a negative
remainingWindowSize
and the thread will remain trapped in an infinite loop waiting forWINDOW_UPDATE
s from the clientThis happens on an outbound grpc stream, for easy replication we modified one of your examples for a gRPC WebServer with the following changes.
You can see the full source code here --> https://github.com/AlfredoG87/helidon-examples/tree/helidon-4.x/examples/webserver/grpc
Environment Details
Problem Description
The WebServer (gRPC) stops streaming after a short amount of time.
Does not appears to happen always in the same way, sometimes it takes longer to happen, but does always happens, only precondition is for outbound stream messages to be large and sustained.
You can see a video showing how the window size becomes negative, never recovers and the server stops streaming on the attached video.
Helidon.Http2.FlowControl.Window.Depleted.mp4
Steps to reproduce
Fork the following project: https://github.com/AlfredoG87/helidon-examples/tree/helidon-4.x/examples/webserver/grpc
Or apply the following commit or changes to your own copy of
helidon-examples
repo.Run application, consume
Split
method with at least 2 words as input, the first one a large amount of lenght.The text was updated successfully, but these errors were encountered: