Skip to content

platform-checks: fix silently ignored flags, replica masking, state leaks#37519

Open
def- wants to merge 1 commit into
MaterializeInc:mainfrom
def-:pr-platform-checks-improve
Open

platform-checks: fix silently ignored flags, replica masking, state leaks#37519
def- wants to merge 1 commit into
MaterializeInc:mainfrom
def-:pr-platform-checks-improve

Conversation

@def-

@def- def- commented Jul 8, 2026

Copy link
Copy Markdown
Contributor
  • Plumb --system-param and --default-replication-factor through to the Mz instances started by StartMz. Both flags were silently ignored because StartMz overrides the service definition wholesale. Also parse all values of a multi-value --system-param instead of only the first.
  • UseClusterdCompute: drop all quickstart replicas, not just r1. Since the default replication factor is 2, the orchestrated r2 kept serving queries and masked compute restarts in RestartClusterdCompute and the UpgradeClusterdCompute* scenarios.
  • cloudtest: sort checks before sharding so that parallel jobs agree on the shard split. Set iteration order differs between processes, so checks could run twice or not at all.
  • Wipe the environment between scenario runs (and between checks in oneatatime mode), iterate scenarios in deterministic order, use a fresh executor per run, and copy the check list before shuffling. Previously state leaked from one run into the next.
  • Make Executor.system_settings per instance and record settings as applied only after the testdrive applying them has succeeded.
  • Backup scenarios: restart Mz through StartMz instead of Restore(restart_mz=True) so the restored instance keeps the service definition it was started with (e.g. the SASL listener).

Test runs: https://buildkite.com/materialize/nightly/builds/17084 & https://buildkite.com/materialize/release-qualification/builds/1303

…eaks

* Plumb --system-param and --default-replication-factor through to the
  Mz instances started by StartMz. Both flags were silently ignored
  because StartMz overrides the service definition wholesale. Also
  parse all values of a multi-value --system-param instead of only the
  first.
* UseClusterdCompute: drop all quickstart replicas, not just r1. Since
  the default replication factor is 2, the orchestrated r2 kept serving
  queries and masked compute restarts in RestartClusterdCompute and the
  UpgradeClusterdCompute* scenarios.
* cloudtest: sort checks before sharding so that parallel jobs agree on
  the shard split. Set iteration order differs between processes, so
  checks could run twice or not at all.
* Wipe the environment between scenario runs (and between checks in
  oneatatime mode), iterate scenarios in deterministic order, use a
  fresh executor per run, and copy the check list before shuffling.
  Previously state leaked from one run into the next.
* Make Executor.system_settings per instance and record settings as
  applied only after the testdrive applying them has succeeded.
* Backup scenarios: restart Mz through StartMz instead of
  Restore(restart_mz=True) so the restored instance keeps the service
  definition it was started with (e.g. the SASL listener).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@def- def- requested a review from bosconi July 8, 2026 21:35
@def- def- marked this pull request as ready for review July 8, 2026 21:35
@def- def- requested a review from a team as a code owner July 8, 2026 21:35
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