logictest: replace default configs with metamorphic meta configs by msbutler · Pull Request #168983 · cockroachdb/cockroach · GitHub
Skip to content

logictest: replace default configs with metamorphic meta configs#168983

Draft
msbutler wants to merge 1 commit intocockroachdb:masterfrom
msbutler:butler-lt-meta
Draft

logictest: replace default configs with metamorphic meta configs#168983
msbutler wants to merge 1 commit intocockroachdb:masterfrom
msbutler:butler-lt-meta

Conversation

@msbutler
Copy link
Copy Markdown
Collaborator

Summary

Replace the 13-config default logictest config set with 3 metamorphic
meta configs that randomly choose config knobs per test file:

  • local-meta (1 node): metamorphically enables legacy schema
    changer, vectorize off, prepared stmts, disk spilling, isolation
    levels, and secondary tenant mode.
  • 3node-meta (3 nodes, DistSQL on): same knobs plus fake span
    resolver.
  • local-mixed-meta (1 node): randomly picks one of the 3 mixed
    version configs.

Each resolved config populates an EquivalentConfigs list so that
skipif/onlyif config directives continue to work. The metamorphic
choices vary per test file within a CI run and across stress iterations.

Epic: none

Release note: None

Previously, a logictest using the default config set ran 13 times across
13 separate static configs. This was excessive and wasteful of CI
resources.

Replace the 13-config default set with 3 metamorphic meta configs that
randomly choose config knobs per test file:

- local-meta (1 node, DistSQL off): 50% legacy schema changer, 50%
  vectorize off, 50% prepared stmts, 50% disk spilling, 25/25/50
  read-committed/repeatable-read/serializable isolation, 50% tenant.

- 3node-meta (3 nodes, DistSQL on): same knobs as local-meta plus 50%
  fake span resolver.

- local-mixed-meta (1 node): randomly picks one of local-mixed-25.4,
  local-mixed-26.1, or local-mixed-26.2 (1/3 each).

Each resolved config populates an EquivalentConfigs list so that
skipif/onlyif config directives in test files continue to work correctly
(e.g. skipif config local-legacy-schema-changer fires when the meta
config randomly enables the legacy schema changer).

The metamorphic choices vary per test file within a CI run and across
stress iterations, providing broad coverage with fewer runs.

Epic: none

Release note: None
@msbutler msbutler self-assigned this Apr 23, 2026
@trunk-io
Copy link
Copy Markdown
Contributor

trunk-io Bot commented Apr 23, 2026

@blathers-crl
Copy link
Copy Markdown

blathers-crl Bot commented Apr 23, 2026

Your pull request contains more than 1000 changes. It is strongly encouraged to split big PRs into smaller chunks.

🦉 Hoot! I am a Blathers, a bot for CockroachDB. My owner is dev-inf.

@cockroach-teamcity
Copy link
Copy Markdown
Member

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.

2 participants