-
Notifications
You must be signed in to change notification settings - Fork 439
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
Use hyper 1.0 and tonic 0.12 in storage broker #9234
Conversation
5084 tests run: 4898 passed, 0 failed, 186 skipped (full report)Code coverage* (full report)
* collected from Rust tests only The comment gets automatically updated with the latest test results
3109c4b at 2024-10-02T21:17:51.259Z :recycle: |
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.
I think this is fine, but I would add a comment or assertion/expect/unreachable why we don't expect serve to fail anymore.
use of http_body_util::Either
can be done later.
Hmm I think we should change "Fixes" to "Cc" or something similar in PR description, because we will still have hyper pre-1.0, or open another issue for that? |
hakari doesn't like the toml: https://github.com/neondatabase/neon/actions/runs/11138756565/job/30954289891?pr=9234 |
IMO the issue is mainly about updating tonic, and the parts about updating hyper are to update hyper in enough places that a tonic update is possible. This is accomplished by this PR. |
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.
I think the current impl does not serve more than one connection at a time, but the old one did. I think we should had had some tests fail for this.
I am still unsure why not a lot of test failures with regress tests if storage_broker only served a single connection (pageserver or safekeeper). |
Prevents panics: hyper-1.4.1/src/common/time.rs:37:17: You must supply a timer.
Fixes #9231 .
Upgrade hyper to 1.4.0 and use hyper 1.4 instead of 0.14 in the storage broker, together with tonic 0.12. The two upgrades go hand in hand.
Thanks to the broker being independent from other components, we can upgrade its hyper version without touching the other components, which makes things easier.