Skip to content
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

cluster: Jitter at the end of ntp reconcile loop #24726

Open
wants to merge 1 commit into
base: dev
Choose a base branch
from

Conversation

StephanDollberg
Copy link
Member

reconcile_ntp_fiber is spawned into the background potentially many
many times concurrently.

Because of how process_delta and friends call reconcile_ntp_fiber
they mark the wakeup_event ready repeatedly so effectively all waiters
will be woken up in one tick. This causes a massive task queue.

Avoid this by making reconcile_ntp_fiber only at the end of the loop.
This means that all invocations will have to make it through the
_reconciliation_sem semaphore once first (which is concurrency
limited).

Backports Required

  • none - not a bug fix
  • none - this is a backport
  • none - issue does not exist in previous branches
  • none - papercut/not impactful enough to backport
  • v24.3.x
  • v24.2.x
  • v24.1.x

Release Notes

  • none

`reconcile_ntp_fiber` is spawned into the background potentially many
many times concurrently.

Because of how `process_delta` and friends call `reconcile_ntp_fiber`
they mark the `wakeup_event` ready repeatedly so effectively all waiters
will be woken up in one tick. This causes a massive task queue.

Avoid this by making `reconcile_ntp_fiber` only at the end of the loop.
This means that all invocations will have to make it through the
`_reconciliation_sem` semaphore once first (which is concurrency
limited).
@vbotbuildovich
Copy link
Collaborator

CI test results

test results on build#60413
test_id test_kind job_url test_status passed
idempotency_tests_rpunit.idempotency_tests_rpunit unit https://buildkite.com/redpanda/redpanda/builds/60413#01944651-b557-4c0a-b893-5cd212cb4995 FLAKY 1/2
rptest.tests.partition_reassignments_test.PartitionReassignmentsTest.test_reassignments_kafka_cli ducktape https://buildkite.com/redpanda/redpanda/builds/60413#0194469d-bba4-43d2-b2fb-00e6b910e8ff FLAKY 4/6
rptest.tests.partition_reassignments_test.PartitionReassignmentsTest.test_reassignments_kafka_cli ducktape https://buildkite.com/redpanda/redpanda/builds/60413#019446ab-5533-44f1-89ca-db311a30db41 FLAKY 4/6

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants