Skip to content

producer_swarm: Add scale factor to wait#30963

Open
StephanDollberg wants to merge 1 commit into
devfrom
stephan/swarm-scale
Open

producer_swarm: Add scale factor to wait#30963
StephanDollberg wants to merge 1 commit into
devfrom
stephan/swarm-scale

Conversation

@StephanDollberg

Copy link
Copy Markdown
Member

Depending on how many brokers there are the initial wait can be slower (as seen on GCP v3 T9).

Allow scaling the wait factor.

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
  • v26.1.x
  • v25.3.x
  • v25.2.x

Release Notes

  • none

Depending on how many brokers there are the initial wait can be slower
(as seen on GCP v3 T9).

Allow scaling the wait factor.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds a configurable scale factor to ProducerSwarm.wait_for_all_started() so tests can extend the initial “all producers started” wait on larger broker counts (e.g., higher-tier cloud clusters), and wires that scaling into the OMB validation test.

Changes:

  • Extend ProducerSwarm.wait_for_all_started() with a timeout_scale parameter and apply it to the computed timeout.
  • In omb_validation_test, scale the swarm-start wait based on broker count and update an explanatory comment.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 2 comments.

File Description
tests/rptest/services/producer_swarm.py Adds a timeout_scale parameter to scale the startup wait timeout for producer swarms.
tests/rptest/redpanda_cloud_tests/omb_validation_test.py Applies broker-count-based scaling when waiting for swarms to start; clarifies warm-up rate comment.

Comment on lines 148 to +149
timeout_s = 30 + 3 * ceil(self._producers * self.CLIENT_SPAWN_WAIT_MS / 1000)
timeout_s = int(timeout_s * timeout_scale)
Comment on lines 431 to +434
for s in swarm:
# wait for the swarm to report that all producers have started (sent at least 1 message)
s.wait_for_all_started()
broker_scale_factor = max(1, self.num_brokers / 6)
s.wait_for_all_started(timeout_scale=broker_scale_factor)
@vbotbuildovich

Copy link
Copy Markdown
Collaborator

CI test results

test results on build#86506
test_status test_class test_method test_arguments test_kind job_url passed reason test_history
FLAKY(PASS) ConsumerGroupBalancingTest test_coordinator_nodes_balance null integration https://buildkite.com/redpanda/redpanda/builds/86506#019f18c2-a1cc-4db9-b670-8365de75bb5d 10/11 Test PASSES after retries.No significant increase in flaky rate(baseline=0.0000, p0=1.0000, reject_threshold=0.0100. adj_baseline=0.1000, p1=0.3487, trust_threshold=0.5000) https://redpanda.metabaseapp.com/dashboard/87-tests?tab=142-dt-individual-test-history&test_class=ConsumerGroupBalancingTest&test_method=test_coordinator_nodes_balance
FLAKY(PASS) DataMigrationsApiTest test_creating_and_listing_migrations null integration https://buildkite.com/redpanda/redpanda/builds/86506#019f18c2-a1d2-447b-a183-1f5f299c9345 10/11 Test PASSES after retries.No significant increase in flaky rate(baseline=0.0000, p0=1.0000, reject_threshold=0.0100. adj_baseline=0.1000, p1=0.3487, trust_threshold=0.5000) https://redpanda.metabaseapp.com/dashboard/87-tests?tab=142-dt-individual-test-history&test_class=DataMigrationsApiTest&test_method=test_creating_and_listing_migrations

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants