Closed tsegismont closed 8 months ago
This happens when the client receives a response that closes the connection and has not yet finished sending the request. Since the request is not yet fully send (due to back-pressure) by the client the HttpClient
will release the connection which is reused for the second request, since the initial request is not finished the second request allocation is created and not completed (pretty much like with pipelining) when the connection processed the connection close, the second stream allocation request is not failed.
https://github.com/eclipse-vertx/vert.x/pull/5151 fixes this in a way that when the request is not yet sent, the connection is not recycled until the request is ended. In addition the pipelining case has been addressed here https://github.com/eclipse-vertx/vert.x/pull/5152
Thank you @vietj
The bug can be reproduced with this:
This program should terminate printing
Success: 413
twice.Instead, it never terminates and prints: