Skip to content

refactor(loadgen): use WaitGroup.Go for scheduled workloads - #3434

Open
daixiheguu wants to merge 1 commit into
evstack:mainfrom
daixiheguu:my_feature
Open

refactor(loadgen): use WaitGroup.Go for scheduled workloads#3434
daixiheguu wants to merge 1 commit into
evstack:mainfrom
daixiheguu:my_feature

Conversation

@daixiheguu

@daixiheguu daixiheguu commented Aug 25, 2026

Copy link
Copy Markdown

Overview

Replace manual WaitGroup.Add/Done wrappers with WaitGroup.Go for immediate, regular, and burst load-generator workloads. This keeps goroutine creation and lifecycle accounting together without changing scheduling, workload parameters, or completion behavior.

More info: golang/go#63796

Summary by CodeRabbit

  • Refactor
    • Improved internal workload scheduling and concurrency management.
    • No user-visible behavior changes.

@coderabbitai

coderabbitai Bot commented Aug 25, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: a756db0a-821e-44e9-b15c-81a7cdd681b9

📥 Commits

Reviewing files that changed from the base of the PR and between 74eccba and db30a64.

📒 Files selected for processing (1)
  • apps/loadgen/cmd/start.go

Included review availability: Your plan provides up to 2 included reviews per hour; 1 remains after this review.


📝 Walkthrough

Walkthrough

The scheduler replaces manual WaitGroup accounting with sync.WaitGroup.Go for immediate, ticker, and burst workload launches.

Changes

Workload launch synchronization

Layer / File(s) Summary
Replace manual workload launch accounting
apps/loadgen/cmd/start.go
The workload closure removes wg.Done(). Immediate, ticker, and burst launches now use wg.Go.

Estimated code review effort: 1 (Trivial) | ~5 minutes

Merge Risk: ⚪ Minimal · up to db30a

This localized refactor changes goroutine lifecycle accounting without changing workload scheduling or completion behavior. No actionable merge-blocking risk remains after normal checks and review.

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 1 functions across 1 files. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Title check ✅ Passed The title clearly identifies the main change: replacing manual workload wait-group handling with WaitGroup.Go in the load generator. It is concise and follows the repository's semantic commit style.
Description check ✅ Passed The description includes the required Overview section and explains the change, scope, rationale, and preserved behavior. It also provides a relevant reference for additional context.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

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.

1 participant