diff --git a/pkg/cmd/roachtest/fixtures/1/checkpoint-v20.1.tgz b/pkg/cmd/roachtest/fixtures/1/checkpoint-v20.1.tgz index 836fbc64d4b8..82169cfaa904 100644 Binary files a/pkg/cmd/roachtest/fixtures/1/checkpoint-v20.1.tgz and b/pkg/cmd/roachtest/fixtures/1/checkpoint-v20.1.tgz differ diff --git a/pkg/cmd/roachtest/fixtures/2/checkpoint-v20.1.tgz b/pkg/cmd/roachtest/fixtures/2/checkpoint-v20.1.tgz index e565080c0d5c..5ebbcd223081 100644 Binary files a/pkg/cmd/roachtest/fixtures/2/checkpoint-v20.1.tgz and b/pkg/cmd/roachtest/fixtures/2/checkpoint-v20.1.tgz differ diff --git a/pkg/cmd/roachtest/fixtures/3/checkpoint-v20.1.tgz b/pkg/cmd/roachtest/fixtures/3/checkpoint-v20.1.tgz index fdda303b7be3..030d1df27d11 100644 Binary files a/pkg/cmd/roachtest/fixtures/3/checkpoint-v20.1.tgz and b/pkg/cmd/roachtest/fixtures/3/checkpoint-v20.1.tgz differ diff --git a/pkg/cmd/roachtest/fixtures/4/checkpoint-v20.1.tgz b/pkg/cmd/roachtest/fixtures/4/checkpoint-v20.1.tgz index 4551edff6169..a3f1bbe93fc0 100644 Binary files a/pkg/cmd/roachtest/fixtures/4/checkpoint-v20.1.tgz and b/pkg/cmd/roachtest/fixtures/4/checkpoint-v20.1.tgz differ diff --git a/pkg/cmd/roachtest/test_runner.go b/pkg/cmd/roachtest/test_runner.go index d12052482d8b..00162e021342 100644 --- a/pkg/cmd/roachtest/test_runner.go +++ b/pkg/cmd/roachtest/test_runner.go @@ -1171,7 +1171,7 @@ func PredecessorVersion(buildVersion version.Version) (string, error) { // (see runVersionUpgrade). The same is true for adding a new key to this // map. verMap := map[string]string{ - "20.2": "20.1.4", + "20.2": "20.1.6", "20.1": "19.2.9", "19.2": "19.1.11", "19.1": "2.1.9", diff --git a/pkg/cmd/roachtest/versionupgrade.go b/pkg/cmd/roachtest/versionupgrade.go index 1382131883de..7932892df0de 100644 --- a/pkg/cmd/roachtest/versionupgrade.go +++ b/pkg/cmd/roachtest/versionupgrade.go @@ -89,13 +89,12 @@ func runVersionUpgrade(ctx context.Context, t *test, c *cluster, buildVersion ve // is necessary after every release. For example, the day `master` becomes // the 20.2 release, this test will fail because it is missing a fixture for // 20.1; run the test (on 20.1) with the bool flipped to create the fixture. - // Check it in (instructions are on the 'checkpointer' struct) and off we - // go. + // Check it in (instructions will be logged below) and off we go. if false { // The version to create/update the fixture for. Must be released (i.e. // can download it from the homepage); if that is not the case use the // empty string which uses the local cockroach binary. - newV := "19.2.6" + newV := "20.1.6" predV, err := PredecessorVersion(*version.MustParse("v" + newV)) if err != nil { t.Fatal(err) @@ -506,8 +505,18 @@ func makeVersionFixtureAndFatal( // compatible). name := checkpointName(u.binaryVersion(ctx, t, 1).String()) u.c.Stop(ctx, c.All()) + // TODO(irfansharif): This will need replacement, or a suitable + // alternative, for when we strip out rocksdb entirely. This will + // fail with an opaque error if building the cockroach binary + // without rocksdb (`make buildshort`). c.Run(ctx, c.All(), cockroach, "debug", "rocksdb", "--db={store-dir}", "checkpoint", "--checkpoint_dir={store-dir}/"+name) + // The `cluster-bootstrapped` marker can already be found within + // store-dir, but the rocksdb checkpoint step above does not pick it + // up as it isn't recognized by RocksDB. We copy the marker + // manually, it's necessary for roachprod created clusters. See + // #54761. + c.Run(ctx, c.Node(1), "cp", "{store-dir}/cluster-bootstrapped", "{store-dir}/"+name) c.Run(ctx, c.All(), "tar", "-C", "{store-dir}/"+name, "-czf", "{log-dir}/"+name+".tgz", ".") t.Fatalf(`successfully created checkpoints; failing test on purpose. @@ -516,7 +525,7 @@ result: for i in 1 2 3 4; do mkdir -p pkg/cmd/roachtest/fixtures/${i} && \ - mv artifacts/acceptance/version-upgrade/run_1/${i}.logs/checkpoint-*.tgz \ + mv artifacts/acceptance/version-upgrade/run_1/logs/${i}.unredacted/checkpoint-*.tgz \ pkg/cmd/roachtest/fixtures/${i}/ done `)