diff --git a/pkg/ccl/backupccl/backup_job.go b/pkg/ccl/backupccl/backup_job.go index 62cc97912d19..8c1e9f22fbb6 100644 --- a/pkg/ccl/backupccl/backup_job.go +++ b/pkg/ccl/backupccl/backup_job.go @@ -353,7 +353,7 @@ func backup( return roachpb.RowCount{}, err } - if backupinfo.WriteMetadataSST.Get(&settings.SV) { + if backupinfo.WriteMetadataSST.Get(&settings.SV) || backupinfo.TestWriteMetadataSST { if err := backupinfo.WriteBackupMetadataSST(ctx, defaultStore, encryption, &kmsEnv, backupManifest, tableStatistics); err != nil { err = errors.Wrap(err, "writing forward-compat metadata sst") diff --git a/pkg/ccl/backupccl/backupinfo/BUILD.bazel b/pkg/ccl/backupccl/backupinfo/BUILD.bazel index a7ca79d41cfc..5d359950deec 100644 --- a/pkg/ccl/backupccl/backupinfo/BUILD.bazel +++ b/pkg/ccl/backupccl/backupinfo/BUILD.bazel @@ -33,6 +33,7 @@ go_library( "//pkg/sql/sem/tree", "//pkg/sql/stats", "//pkg/storage", + "//pkg/util", "//pkg/util/ctxgroup", "//pkg/util/encoding", "//pkg/util/hlc", diff --git a/pkg/ccl/backupccl/backupinfo/manifest_handling.go b/pkg/ccl/backupccl/backupinfo/manifest_handling.go index e45022ed3c60..e97ed5736d3d 100644 --- a/pkg/ccl/backupccl/backupinfo/manifest_handling.go +++ b/pkg/ccl/backupccl/backupinfo/manifest_handling.go @@ -39,6 +39,7 @@ import ( "github.com/cockroachdb/cockroach/pkg/sql/pgwire/pgerror" "github.com/cockroachdb/cockroach/pkg/sql/sem/tree" "github.com/cockroachdb/cockroach/pkg/sql/stats" + "github.com/cockroachdb/cockroach/pkg/util" "github.com/cockroachdb/cockroach/pkg/util/ctxgroup" "github.com/cockroachdb/cockroach/pkg/util/encoding" "github.com/cockroachdb/cockroach/pkg/util/hlc" @@ -82,15 +83,18 @@ const ( // WriteMetadataSST controls if we write the experimental new format BACKUP // metadata file. -// kv.bulkio.rite_metadata_sst.enabled set to false by default due to -// https://github.com/cockroachdb/cockroach/issues/85564. var WriteMetadataSST = settings.RegisterBoolSetting( settings.TenantWritable, "kv.bulkio.write_metadata_sst.enabled", "write experimental new format BACKUP metadata file", - true, + false, ) +// TestWriteMetadataSST causes unit tests that run a backup to write the metadata sst with some +// probability. +var TestWriteMetadataSST = util.ConstantWithMetamorphicTestBool("write-metadata-sst", + WriteMetadataSST.Default()) + // IsGZipped detects whether the given bytes represent GZipped data. This check // is used rather than a standard implementation such as http.DetectContentType // since some zipped data may be mis-identified by that method. We've seen