You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
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 4.x Http2 Outbound Flow Control has a Bug on how it calculates the Window Size.
We believe that the strategy in place is bugged and is running on a deficit on the calculated window size available on the client.
This 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: