Skip to content

clusterversion: bump PreviousRelease to V26_2 (M.3)#168801

Open
celiala wants to merge 2 commits intocockroachdb:masterfrom
celiala:enable-upgrade-tests-26.2-code
Open

clusterversion: bump PreviousRelease to V26_2 (M.3)#168801
celiala wants to merge 2 commits intocockroachdb:masterfrom
celiala:enable-upgrade-tests-26.2-code

Conversation

@celiala
Copy link
Copy Markdown
Collaborator

@celiala celiala commented Apr 21, 2026

Summary

Part of M.3 "Enable upgrade tests" for v26.2.

  • Bumps PreviousRelease constant from V26_1V26_2
  • Adds cockroach-go-testserver-26.2 logictest configuration
  • Adds generated test directory for the new config
  • Updates BUILD.bazel visibility and pkg/BUILD.bazel targets

PR 1 (fixtures) was already merged: #168432

Known CI failure: TestDeclarativeRules will fail because pkg/cli/testdata/declarative-rules/deprules needs regeneration with --rewrite. Will fix in a follow-up commit once CI provides the correct diff.

Epic: None

@celiala celiala requested review from a team as code owners April 21, 2026 20:28
@trunk-io
Copy link
Copy Markdown
Contributor

trunk-io Bot commented Apr 21, 2026

Merging to master in this repository is managed by Trunk.

  • To merge this pull request, check the box to the left or comment /trunk merge below.

After your PR is submitted to the merge queue, this comment will be automatically updated with its status. If the PR fails, failure details will also be posted here

@cockroach-teamcity
Copy link
Copy Markdown
Member

This change is Reviewable

@blathers-crl
Copy link
Copy Markdown

blathers-crl Bot commented Apr 21, 2026

Detected infrastructure failure (matched: self-hosted runner lost communication with the server). Automatically rerunning failed jobs. (run link)

@celiala celiala force-pushed the enable-upgrade-tests-26.2-code branch from 14bda22 to 4c169df Compare April 22, 2026 19:03
@celiala
Copy link
Copy Markdown
Collaborator Author

celiala commented Apr 22, 2026

Claude's comparison against the M.3 PR2 task for 26.2 (#152080):

Structure match — everything expected is there

Change In 25.3 PR (#152080) In 26.2 PR (#168801)
pkg/clusterversion/cockroach_versions.go — PreviousRelease bump
pkg/sql/logictest/logictestbase/logictestbase.go — new testserver config + set
pkg/sql/logictest/BUILD.bazel — visibility for new testserver dir
pkg/sql/logictest/tests/cockroach-go-testserver-<VERSION>/BUILD.bazel ✅ (25.3) ✅ (26.2)
pkg/sql/logictest/tests/cockroach-go-testserver-<VERSION>/generated_test.go ✅ (25.3) ✅ (26.2)
pkg/BUILD.bazel
pkg/cli/testdata/declarative-rules/deprules — Step 6.5 rewrite

Differences — all expected

In reference but not current (expected omissions):

  • pkg/crosscluster/logical/logical_replication_job_test.go — version-specific fix from the 25.3 cycle, not needed for 26.2 ✅
  • pkg/sql/logictest/testdata/logic_test/vector_index_mixed — version-specific skipif from the 25.3 cycle, not needed for 26.2 ✅
  • pkg/sql/logictest/tests/cockroach-go-testserver-25.3/{BUILD.bazel,generated_test.go} — these are the equivalent of the cockroach-go-testserver-26.2/ files in the current PR ✅

In current but not reference (expected additions):

  • pkg/sql/logictest/testdata/logic_test/mixed_version_statement_hints_session_settings — narrowed from cockroach-go-testserver-configs to cockroach-go-testserver-25.4 cockroach-go-testserver-26.1 because the test requires V26_2_StatementHintsTypeColumnBackfilled and cannot run on a cluster bootstrapped at 26.2 ✅
  • pkg/sql/logictest/testdata/logic_test/mixed_version_trigger_backref — same rationale ✅
  • pkg/clusterversion/runbooks/M3_enable_upgrade_tests_QUICK.md — bonus runbook improvement ✅
  • pkg/clusterversion/runbooks/failures/m3_failures.md — new CI failure reference doc, useful for future cycles ✅

Content looks correct

  • cockroach_versions.go: PreviousRelease changed from V26_1V26_2
  • logictestbase.go: New cockroach-go-testserver-26.2 config exactly matches the 26.1 shape (UseCockroachGoTestserver: true, BootstrapVersion: clusterversion.V26_2, NumNodes: 3) ✅
  • logictestbase.go: Added to cockroach-go-testserver-configs set ✅
  • logictest/BUILD.bazel: Visibility added for both //pkg/ccl/logictestccl/tests/cockroach-go-testserver-26.2:__pkg__ and //pkg/sql/logictest/tests/cockroach-go-testserver-26.2:__pkg__
  • generated_test.go: configIdx = 25; 26.2 appended at end of slice so no existing configs shifted, no other generated_test.go bumps needed ✅
  • generated_test.go: TestLogic_mixed_version_statement_hints_session_settings and TestLogic_mixed_version_trigger_backref correctly absent — properly excluded to match the narrowed headers ✅
  • deprules: 228 additions / 228 deletions — regenerated cleanly ✅

Verdict

No issues found. Clean, correct application of the established 25.3 pattern with appropriate version-specific exclusions for two logic tests that exercise 26.2-specific upgrade semantics.

@cockroach-teamcity
Copy link
Copy Markdown
Member

⚪ Sysbench [SQL, 3node, oltp_read_write]
Metric Old Commit New Commit Delta Note
sec/op 9.842m ±1% 9.847m ±1% ~ p=0.567 n=15
allocs/op 8.115k ±1% 8.127k ±1% ~ p=0.395 n=15
Reproduce

benchdiff binaries:

mkdir -p benchdiff/4c169df/bin/1058449141
gcloud storage cp gs://cockroach-microbench-ci/builds/4c169df73349eac79484904b0be52249896ab9f0/bin/pkg_sql_tests benchdiff/4c169df/bin/1058449141/cockroachdb_cockroach_pkg_sql_tests
chmod +x benchdiff/4c169df/bin/1058449141/cockroachdb_cockroach_pkg_sql_tests
mkdir -p benchdiff/24dc4d6/bin/1058449141
gcloud storage cp gs://cockroach-microbench-ci/builds/24dc4d66c7cf19a1aeb6797527b50a5b8996cd60/bin/pkg_sql_tests benchdiff/24dc4d6/bin/1058449141/cockroachdb_cockroach_pkg_sql_tests
chmod +x benchdiff/24dc4d6/bin/1058449141/cockroachdb_cockroach_pkg_sql_tests

benchdiff command:

# NB: for best (most stable) results, also add a suitable `--benchtime` that
# results in ~1s to ~5s of benchmark runs. For example, if ops average ~3ms, a
# benchtime of `1000x` is appropriate.
#
# Some benchmarks (in particular BenchmarkSysbench) output additional memory
# profiles covering only the execution (excluding the setup/teardown) - those
# should be preferred for analysis since they more closely correspond to what's
# reported as B/op and alloc/op.
benchdiff --run=^BenchmarkSysbench/SQL/3node/oltp_read_write$ --old=24dc4d6 --new=4c169df --memprofile ./pkg/sql/tests
🔴 Sysbench [KV, 3node, oltp_read_only]
Metric Old Commit New Commit Delta Note
🔴 sec/op 3.089m ±1% 3.138m ±1% +1.60% p=0.000 n=15
allocs/op 2.100k ±0% 2.100k ±0% ~ p=0.423 n=15
Reproduce

benchdiff binaries:

mkdir -p benchdiff/4c169df/bin/1058449141
gcloud storage cp gs://cockroach-microbench-ci/builds/4c169df73349eac79484904b0be52249896ab9f0/bin/pkg_sql_tests benchdiff/4c169df/bin/1058449141/cockroachdb_cockroach_pkg_sql_tests
chmod +x benchdiff/4c169df/bin/1058449141/cockroachdb_cockroach_pkg_sql_tests
mkdir -p benchdiff/24dc4d6/bin/1058449141
gcloud storage cp gs://cockroach-microbench-ci/builds/24dc4d66c7cf19a1aeb6797527b50a5b8996cd60/bin/pkg_sql_tests benchdiff/24dc4d6/bin/1058449141/cockroachdb_cockroach_pkg_sql_tests
chmod +x benchdiff/24dc4d6/bin/1058449141/cockroachdb_cockroach_pkg_sql_tests

benchdiff command:

# NB: for best (most stable) results, also add a suitable `--benchtime` that
# results in ~1s to ~5s of benchmark runs. For example, if ops average ~3ms, a
# benchtime of `1000x` is appropriate.
#
# Some benchmarks (in particular BenchmarkSysbench) output additional memory
# profiles covering only the execution (excluding the setup/teardown) - those
# should be preferred for analysis since they more closely correspond to what's
# reported as B/op and alloc/op.
benchdiff --run=^BenchmarkSysbench/KV/3node/oltp_read_only$ --old=24dc4d6 --new=4c169df --memprofile ./pkg/sql/tests
⚪ Sysbench [KV, 3node, oltp_write_only]
Metric Old Commit New Commit Delta Note
sec/op 3.078m ±2% 3.140m ±2% ~ p=0.037 n=15
allocs/op 4.216k ±0% 4.218k ±0% ~ p=0.660 n=15
Reproduce

benchdiff binaries:

mkdir -p benchdiff/4c169df/bin/1058449141
gcloud storage cp gs://cockroach-microbench-ci/builds/4c169df73349eac79484904b0be52249896ab9f0/bin/pkg_sql_tests benchdiff/4c169df/bin/1058449141/cockroachdb_cockroach_pkg_sql_tests
chmod +x benchdiff/4c169df/bin/1058449141/cockroachdb_cockroach_pkg_sql_tests
mkdir -p benchdiff/24dc4d6/bin/1058449141
gcloud storage cp gs://cockroach-microbench-ci/builds/24dc4d66c7cf19a1aeb6797527b50a5b8996cd60/bin/pkg_sql_tests benchdiff/24dc4d6/bin/1058449141/cockroachdb_cockroach_pkg_sql_tests
chmod +x benchdiff/24dc4d6/bin/1058449141/cockroachdb_cockroach_pkg_sql_tests

benchdiff command:

# NB: for best (most stable) results, also add a suitable `--benchtime` that
# results in ~1s to ~5s of benchmark runs. For example, if ops average ~3ms, a
# benchtime of `1000x` is appropriate.
#
# Some benchmarks (in particular BenchmarkSysbench) output additional memory
# profiles covering only the execution (excluding the setup/teardown) - those
# should be preferred for analysis since they more closely correspond to what's
# reported as B/op and alloc/op.
benchdiff --run=^BenchmarkSysbench/KV/3node/oltp_write_only$ --old=24dc4d6 --new=4c169df --memprofile ./pkg/sql/tests
Artifacts

download:

mkdir -p new
gcloud storage cp gs://cockroach-microbench-ci/artifacts/4c169df73349eac79484904b0be52249896ab9f0/24797137503-1/\* new/
mkdir -p old
gcloud storage cp gs://cockroach-microbench-ci/artifacts/24dc4d66c7cf19a1aeb6797527b50a5b8996cd60/24797137503-1/\* old/

built with commit: 4c169df73349eac79484904b0be52249896ab9f0

@cockroach-teamcity cockroach-teamcity added the X-perf-check Microbenchmarks CI: Added to a PR if a performance regression is detected and should be checked label Apr 22, 2026
@celiala celiala force-pushed the enable-upgrade-tests-26.2-code branch 2 times, most recently from 6137713 to 441e463 Compare April 23, 2026 18:02
celiala and others added 2 commits April 28, 2026 11:58
Part of M.3 "Enable upgrade tests" task for v26.2.

Updates PreviousRelease from V26_1 to V26_2 and adds the
cockroach-go-testserver-26.2 logictest configuration.

Changes:
- Updated PreviousRelease constant in cockroach_versions.go
- Added cockroach-go-testserver-26.2 config to logictestbase.go (configIdx=25)
- Added pkg/sql/logictest/tests/cockroach-go-testserver-26.2/ with BUILD.bazel
  and generated_test.go (6 test functions, shard_count=6)
- Updated BUILD.bazel visibility and pkg/BUILD.bazel targets
- Updated pkg/cli/testdata/declarative-rules/deprules (26.1→26.2)
- Restricted mixed_version_statement_hints_session_settings and
  mixed_version_trigger_backref to cockroach-go-testserver-25.4 and 26.1
  configs only; these tests verify the transition to v26.2 and are not valid
  for a cluster that already bootstraps at v26.2

Release note: None
Epic: None

Co-Authored-By: roachdev-claude <roachdev-claude-bot@cockroachlabs.com>
- Add "Has PR 1 Already Been Done?" check to M3 QUICK runbook with
  verification commands and git log to find the fixtures PR
- Add Step 6 gitignored-file warning: document the BUILD.bazel asymmetry
  (packages with only gitignored Go files) that causes check_generated_code
  failures, with fix commands and CI compatibility spot-check procedure
- Add failures/m3_failures.md: manual fallback guide for when ./dev gen bazel
  fails locally (e.g. Xcode/clang incompatibility), covering all 4 changes
  needed when adding a new testserver config

Release note: None
Epic: None

Co-Authored-By: roachdev-claude <roachdev-claude-bot@cockroachlabs.com>
@celiala celiala force-pushed the enable-upgrade-tests-26.2-code branch from 441e463 to 3a0b395 Compare April 28, 2026 23:01
@cockroach-teamcity
Copy link
Copy Markdown
Member

⚪ Sysbench [SQL, 3node, oltp_read_write]
Metric Old Commit New Commit Delta Note
sec/op 10.68m ±7% 10.67m ±8% ~ p=0.683 n=15
allocs/op 8.130k ±1% 8.166k ±1% ~ p=0.184 n=15
Reproduce

benchdiff binaries:

mkdir -p benchdiff/3a0b395/bin/1058449141
gcloud storage cp gs://cockroach-microbench-ci/builds/3a0b395ed3f384f9c4c590fd558ce00e0d8d889e/bin/pkg_sql_tests benchdiff/3a0b395/bin/1058449141/cockroachdb_cockroach_pkg_sql_tests
chmod +x benchdiff/3a0b395/bin/1058449141/cockroachdb_cockroach_pkg_sql_tests
mkdir -p benchdiff/4442354/bin/1058449141
gcloud storage cp gs://cockroach-microbench-ci/builds/4442354d04be76f56cbbdb06f76894fb3dcf4fbf/bin/pkg_sql_tests benchdiff/4442354/bin/1058449141/cockroachdb_cockroach_pkg_sql_tests
chmod +x benchdiff/4442354/bin/1058449141/cockroachdb_cockroach_pkg_sql_tests

benchdiff command:

# NB: for best (most stable) results, also add a suitable `--benchtime` that
# results in ~1s to ~5s of benchmark runs. For example, if ops average ~3ms, a
# benchtime of `1000x` is appropriate.
#
# Some benchmarks (in particular BenchmarkSysbench) output additional memory
# profiles covering only the execution (excluding the setup/teardown) - those
# should be preferred for analysis since they more closely correspond to what's
# reported as B/op and alloc/op.
benchdiff --run=^BenchmarkSysbench/SQL/3node/oltp_read_write$ --old=4442354 --new=3a0b395 --memprofile ./pkg/sql/tests
⚪ Sysbench [KV, 3node, oltp_read_only]
Metric Old Commit New Commit Delta Note
sec/op 3.106m ±2% 3.101m ±5% ~ p=0.305 n=15
allocs/op 2.101k ±0% 2.101k ±0% ~ p=0.632 n=15
Reproduce

benchdiff binaries:

mkdir -p benchdiff/3a0b395/bin/1058449141
gcloud storage cp gs://cockroach-microbench-ci/builds/3a0b395ed3f384f9c4c590fd558ce00e0d8d889e/bin/pkg_sql_tests benchdiff/3a0b395/bin/1058449141/cockroachdb_cockroach_pkg_sql_tests
chmod +x benchdiff/3a0b395/bin/1058449141/cockroachdb_cockroach_pkg_sql_tests
mkdir -p benchdiff/4442354/bin/1058449141
gcloud storage cp gs://cockroach-microbench-ci/builds/4442354d04be76f56cbbdb06f76894fb3dcf4fbf/bin/pkg_sql_tests benchdiff/4442354/bin/1058449141/cockroachdb_cockroach_pkg_sql_tests
chmod +x benchdiff/4442354/bin/1058449141/cockroachdb_cockroach_pkg_sql_tests

benchdiff command:

# NB: for best (most stable) results, also add a suitable `--benchtime` that
# results in ~1s to ~5s of benchmark runs. For example, if ops average ~3ms, a
# benchtime of `1000x` is appropriate.
#
# Some benchmarks (in particular BenchmarkSysbench) output additional memory
# profiles covering only the execution (excluding the setup/teardown) - those
# should be preferred for analysis since they more closely correspond to what's
# reported as B/op and alloc/op.
benchdiff --run=^BenchmarkSysbench/KV/3node/oltp_read_only$ --old=4442354 --new=3a0b395 --memprofile ./pkg/sql/tests
⚪ Sysbench [KV, 3node, oltp_write_only]
Metric Old Commit New Commit Delta Note
sec/op 3.009m ±2% 2.997m ±2% ~ p=0.967 n=15
allocs/op 4.206k ±0% 4.210k ±0% ~ p=0.393 n=15
Reproduce

benchdiff binaries:

mkdir -p benchdiff/3a0b395/bin/1058449141
gcloud storage cp gs://cockroach-microbench-ci/builds/3a0b395ed3f384f9c4c590fd558ce00e0d8d889e/bin/pkg_sql_tests benchdiff/3a0b395/bin/1058449141/cockroachdb_cockroach_pkg_sql_tests
chmod +x benchdiff/3a0b395/bin/1058449141/cockroachdb_cockroach_pkg_sql_tests
mkdir -p benchdiff/4442354/bin/1058449141
gcloud storage cp gs://cockroach-microbench-ci/builds/4442354d04be76f56cbbdb06f76894fb3dcf4fbf/bin/pkg_sql_tests benchdiff/4442354/bin/1058449141/cockroachdb_cockroach_pkg_sql_tests
chmod +x benchdiff/4442354/bin/1058449141/cockroachdb_cockroach_pkg_sql_tests

benchdiff command:

# NB: for best (most stable) results, also add a suitable `--benchtime` that
# results in ~1s to ~5s of benchmark runs. For example, if ops average ~3ms, a
# benchtime of `1000x` is appropriate.
#
# Some benchmarks (in particular BenchmarkSysbench) output additional memory
# profiles covering only the execution (excluding the setup/teardown) - those
# should be preferred for analysis since they more closely correspond to what's
# reported as B/op and alloc/op.
benchdiff --run=^BenchmarkSysbench/KV/3node/oltp_write_only$ --old=4442354 --new=3a0b395 --memprofile ./pkg/sql/tests
Artifacts

download:

mkdir -p new
gcloud storage cp gs://cockroach-microbench-ci/artifacts/3a0b395ed3f384f9c4c590fd558ce00e0d8d889e/25082097671-1/\* new/
mkdir -p old
gcloud storage cp gs://cockroach-microbench-ci/artifacts/4442354d04be76f56cbbdb06f76894fb3dcf4fbf/25082097671-1/\* old/

built with commit: 3a0b395ed3f384f9c4c590fd558ce00e0d8d889e

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

X-perf-check Microbenchmarks CI: Added to a PR if a performance regression is detected and should be checked

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants