diegomrsantos opened a new pull request, #4122: URL: https://github.com/apache/iggy/pull/4122
## Which issue does this PR address? Relates to #4117. The benchmark tooling was extracted from #4119 so it can be reviewed independently of the poll completion fix. ## Rationale Comparing changes to polling needs explicit control over polling behavior and latency measurement, together with raw observations and a repeatable workload setup. ## What changed? The benchmark client adds optional polling and latency selectors, raw poll observations, run manifests, and producer samples. Failed and interrupted runs retain their artifacts, and reports handle short runs with empty time series. Existing selector defaults and the report JSON schema are preserved. A Python runner prepares workloads, records binary hashes and process samples, schedules paired runs, and compares results. The tooling builds against current master and does not require the server changes in #4119. The documentation describes measurement limits and treats server diagnostics as optional. ## Local Execution - Passed `cargo test --locked -p iggy-bench -p bench-report`: 42 tests. - Passed all nine Python campaign tests. - Passed Clippy for both benchmark crates with all features, all targets, and warnings denied. - Passed a local macOS smoke run against a server without the poll fix: 100 completed polls, with artifacts retained and no empty responses or errors. This checks execution, not performance. - Passed workspace formatting and dependency sort checks, changed TOML formatting, Markdown lint, spelling, license headers, whitespace, and trailing newline checks. - Pre-commit hooks are not installed in this checkout; the checks above were run directly. No new performance comparison is claimed by this extraction. The previously recorded measurements remain in #4119. ## AI Usage Codex was used for the extraction, dependency review, standalone documentation adjustments, and local verification listed above. This PR is a draft for further review. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
