-
Notifications
You must be signed in to change notification settings - Fork 502
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
Drain response bodies before retrying #2987
Drain response bodies before retrying #2987
Conversation
Codecov ReportBase: 90.84% // Head: 90.84% // No change to project coverage 👍
Additional details and impacted files@@ Coverage Diff @@
## main #2987 +/- ##
=======================================
Coverage 90.84% 90.84%
=======================================
Files 160 160
Lines 3298 3298
Branches 314 314
=======================================
Hits 2996 2996
Misses 302 302
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here. ☔ View full report at Codecov. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks @armanbilge!
@daddykotex It would be nice to know if this fixes the error you reported in the http4s-jdk-http-client issue.
Last docker tag was build on:
Looking at the stack, we may be looking at a different problem. |
Thanks for trying that! It may be that we need to drain the body in some other places as well.
Well, these kinds of issues are tricky to track down. In my experience usually it's the request before the request that appears to fail that has gone wrong. e.g. one request succeeds but corrupts the connection, the one after it goes wrong. |
The stack trace also includes |
Today, the stack was a little bit different:
Ran on: |
I'm starting to think that the reason we see this error is due to rate limiting (but I'm not sure because after we see the error, the instance continues to create other PRs in other repos...). When you look at the docs for rate limiting it is specified that we can read:
Right after that, there is an example of response when rate limiting occurs:
We can see two things: |
Not sure about the connection to HTTP/2. The stack traces above are both mentioning HTTP/1 related classes. |
Workaround for http4s/http4s-jdk-http-client#714 (comment). Hopefully :)