-
Notifications
You must be signed in to change notification settings - Fork 592
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
Improve handling of progress conditions in non-polling fetch #19930
Conversation
ducktape was retried in https://buildkite.com/redpanda/redpanda/builds/50475#01903422-bccb-4400-b98a-c16d58307095 |
new failures in https://buildkite.com/redpanda/redpanda/builds/50475#01903423-12e4-4950-bdd0-0a5cbe7823d7:
new failures in https://buildkite.com/redpanda/redpanda/builds/50475#01903423-12e2-459e-ba79-81b4d832cc07:
|
/ci-repeat 5 |
All failures look to be known issues;
|
The use of `ss::when_any` and `ss::promise<>` for each progress condition resulted in unneeded allocations as well as expensive broken promises and exception propagation. This commit changes all progress conditions to signal the same `ss::condition_variable` instead. This simplifies their handling and greatly reduces their cost.
/backport v24.1.x |
/backport v23.3.x |
/backport v23.2.x |
Failed to create a backport PR to v24.1.x branch. I tried:
|
Failed to create a backport PR to v23.2.x branch. I tried:
|
Failed to create a backport PR to v23.3.x branch. I tried:
|
The use of
ss::when_any
andss::promise<>
for each progress condition resulted in unneeded allocations as well as expensive broken promises and exception propagation. This commit changes all progress conditions to signal the samess::condition_variable
instead. This simplifies their handling and greatly reduces their cost.The profile for progress conditions before this PR;
And then after this PR;
Backports Required
Release Notes