Ramping VU Configuration Inconsistent After k6 v0.55 Upgrade
0 reputation · 22 Jun 2020, 10:15 UTC
0 reputation · 22 Jun 2020, 10:15 UTC
After upgrading from k6 0.54 to 0.55, the Ramping VU feature appears to behave differently. The upgrade script does not preserve ramp‑up and ramp‑down values, and the CLI/ UI display conflicting duration units (seconds vs milliseconds). Internally, the rate limiter implementation changed, potentially causing unexpected throttling during ramping.
The goal is to confirm the expected behavior of the Ramping VU feature in the new version, determine whether the rate‑limiter change impacts ramping, and establish a reliable verification method to ensure ramp‑up durations are interpreted correctly.
In k6 v0.55, Ramping VU duration parameters are interpreted in seconds by default when no unit suffix is provided. The upgrade from 0.54 does not change this fundamental behavior, but the CLI and web UI may display conflicting units (seconds vs milliseconds) due to internal formatting changes. The rate limiter operates independently from the VU ramping mechanism—it throttles per-VU request rates, not the global VU count progression. However, overlapping configurations can create the appearance of pacing discrepancies.
duration: 30) are treated as seconds. Explicit suffixes (30s, 30000ms) are always honored and eliminate ambiguity.rps or iterations rate limiter constrains how fast each VU executes iterations. It does not alter the scheduler's VU ramp-up/down timeline.export const options = {
scenarios: {
ramp: {
executor: 'ramping-vus',
stages: [
{ duration: '30s', target: 50 },
{ duration: '1m', target: 100 },
{ duration: '30s', target: 0 }
]
}
}
};
k6 run --out json=metrics.json script.js
vus and vus_max metrics over time in the JSON output or via k6 run --summary-export=summary.json. Confirm the VU count reaches each target at the expected wall-clock time.rps or maxIterations) and re-run. If ramp timing matches expectations without the limiter, the limiter configuration—not the scheduler—is causing the perceived discrepancy.Does your script use a rps (requests per second) or maxIterations rate limiter in the same scenario? If yes, share the exact limiter value and the ramp stage durations. That combination determines whether the limiter is starving VUs during ramp-up, which would look like a scheduler bug but is actually expected back-pressure behavior.
Use comments to ask for clarification. Post a solution as an answer.
No question comments on this page.