Skip to content

test(SM-8.9): tune Optimize import for faster e2e nightlies#6434

Merged
Ian-wang-liyang merged 2 commits into
mainfrom
perf/sm-8.9-stabilize-runtime
Jun 23, 2026
Merged

test(SM-8.9): tune Optimize import for faster e2e nightlies#6434
Ian-wang-liyang merged 2 commits into
mainfrom
perf/sm-8.9-stabilize-runtime

Conversation

@eamonnmoloney

@eamonnmoloney eamonnmoloney commented Jun 23, 2026

Copy link
Copy Markdown
Contributor

Which problem does the PR fix?

The SM-8.9 cross-component e2e suite's long pole is the Optimize-import-bound
flow (optimize-user-flows.spec.ts > New Instances Updated Flow). Under CI
sharding the full-suite wall-clock collapses to the slowest single test, so
this flow gates the whole run.

Optimize's default import scheduling makes newly-run process data invisible to
reports for tens of seconds — import.handler.backoff.max is 30s and
import.currentTimeBackoffMilliseconds is 5 minutes. That inflates the test
wall-clock and forces long fixed waits in the e2e specs.

What's in this PR?

1. Optimize import tuning (base.yaml, Layer 1 — applied to every non-qa-
nightly scenario; base-qa.yaml only loads for qa--prefixed scenarios, so it
would silently no-op for eske/oske/kemt/kerba):

  • CAMUNDA_OPTIMIZE_IMPORT_HANDLER_BACKOFF_MAX: 30s → 1s
  • CAMUNDA_OPTIMIZE_IMPORT_CURRENTTIMEBACKOFFMILLISECONDS: 300000 → 1000
  • CAMUNDA_OPTIMIZE_ZEEBE_MAXIMPORTPAGESIZE: 200 → 1000

Safe in the low-write QA env. Scope is test/integration scenario values only —
no user-facing chart change.

2. shadow-e2e scenario — mirrors the dedicated full-suite scenario already
present in 8.7 and 8.10. It is skip-e2e (no per-scenario e2e), so the
shadow-e2e-full-suite job runs the complete SM-8.9 Playwright suite against a
single keycloak + elasticsearch + gke deployment — a representative full-suite
signal and wall-clock for this tuning. Registry snapshot regenerated via
make go.update-registry-golden; matrix + scenarios Go tests green.

Validation (live, matrix-89-eske-inst-gke):

  • New Instances Updated Flow passed in 4.5m (+35s setup)
  • optimize 3 heavy tests + setup green in 5.0m, first attempt, no retries
  • helm template renders the env into the optimize deployment from base.yaml alone
  • go test ./optimize/... green

Coordinated with the e2e-side change in
camunda/c8-cross-component-e2e-tests#2634 (retry-helper bounding). Merge order:
this Helm PR first (gates the nightly matrix), then #2634.

🤖 Generated with Claude Code

The SM-8.9 e2e long pole is the Optimize-import-bound flow
(optimize-user-flows > New Instances Updated Flow). Optimize's
default import backoff (max 30s) and currentTimeBackoff (5m) leave
newly-run process data invisible to reports for tens of seconds,
inflating the test wall-clock and forcing long fixed waits.

Tune the integration deploy (base.yaml, Layer 1 so it applies to all
non-qa nightly scenarios, not just qa-prefixed ones):
- import.handler.backoff.max 30s -> 1s
- import.currentTimeBackoffMilliseconds 300000 -> 1000
- zeebe.maxImportPageSize 200 -> 1000

Safe in the low-write QA env. Validated live on
matrix-89-eske-inst-gke: New Instances passed 4.5m (+35s setup);
optimize 3 heavy tests + setup green in 5.0m. helm template renders
the env into the optimize deployment from base.yaml alone; go test
./optimize/... green.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@github-actions github-actions Bot added the version/8.9 Camunda applications/cycle version label Jun 23, 2026
Mirror the dedicated shadow-e2e scenario from 8.7/8.10 in the 8.9 CI
registry. It is skip-e2e (the per-scenario e2e run is skipped) so the
shadow-e2e-full-suite job in test-integration-runner.yaml runs the
complete SM-8.9 Playwright suite against a single keycloak +
elasticsearch + gke deployment, giving a representative full-suite
signal and wall-clock alongside the Optimize import tuning in this PR.

Registry snapshot regenerated via make go.update-registry-golden;
matrix + scenarios Go tests green.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@eamonnmoloney eamonnmoloney marked this pull request as ready for review June 23, 2026 13:15
@eamonnmoloney eamonnmoloney requested a review from a team as a code owner June 23, 2026 13:15
@eamonnmoloney eamonnmoloney requested review from Ian-wang-liyang and Copilot and removed request for a team and Copilot June 23, 2026 13:15
@Ian-wang-liyang Ian-wang-liyang added this pull request to the merge queue Jun 23, 2026
Merged via the queue into main with commit c604b8a Jun 23, 2026
86 checks passed
@Ian-wang-liyang Ian-wang-liyang deleted the perf/sm-8.9-stabilize-runtime branch June 23, 2026 17:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

version/8.9 Camunda applications/cycle version

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants