Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

sql: increase tenant testing coverage #141604

Merged
merged 1 commit into from
Feb 21, 2025
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions pkg/sql/err_count_test.go
Original file line number Diff line number Diff line change
@@ -25,7 +25,7 @@ func TestErrorCounts(t *testing.T) {

telemetry.GetFeatureCounts(telemetry.Raw, telemetry.ResetCounts)

params, _ := createTestServerParams()
params, _ := createTestServerParamsAllowTenants()
s, db, _ := serverutils.StartServer(t, params)
defer s.Stopper().Stop(context.Background())

@@ -69,7 +69,7 @@ func TestTransactionRetryErrorCounts(t *testing.T) {
// in pgwire (pgwire.convertToErrWithPGCode). Make sure we're
// reporting errors at a level that allows this code to be recorded.

params, _ := createTestServerParams()
params, _ := createTestServerParamsAllowTenants()
s, db, _ := serverutils.StartServer(t, params)
defer s.Stopper().Stop(context.Background())

2 changes: 1 addition & 1 deletion pkg/sql/explain_test.go
Original file line number Diff line number Diff line change
@@ -517,7 +517,7 @@ func TestExplainRedact(t *testing.T) {
rng, seed := randutil.NewTestRand()
t.Log("seed:", seed)

params, _ := createTestServerParams()
params, _ := createTestServerParamsAllowTenants()
srv, sqlDB, _ := serverutils.StartServer(t, params)
defer srv.Stopper().Stop(ctx)

21 changes: 10 additions & 11 deletions pkg/sql/materialized_view_test.go
Original file line number Diff line number Diff line change
@@ -10,7 +10,6 @@ import (
"testing"

"github.com/cockroachdb/cockroach/pkg/base"
"github.com/cockroachdb/cockroach/pkg/keys"
"github.com/cockroachdb/cockroach/pkg/sql"
"github.com/cockroachdb/cockroach/pkg/sql/catalog/desctestutils"
"github.com/cockroachdb/cockroach/pkg/sql/sqltestutils"
@@ -31,7 +30,7 @@ func TestMaterializedViewClearedAfterRefresh(t *testing.T) {
defer log.Scope(t).Close(t)

ctx := context.Background()
params, _ := createTestServerParams()
params, _ := createTestServerParamsAllowTenants()

s, sqlDB, kvDB := serverutils.StartServer(t, params)
defer s.Stopper().Stop(ctx)
@@ -49,7 +48,7 @@ CREATE MATERIALIZED VIEW t.v AS SELECT x FROM t.t;
t.Fatal(err)
}

descBeforeRefresh := desctestutils.TestingGetPublicTableDescriptor(kvDB, keys.SystemSQLCodec, "t", "v")
descBeforeRefresh := desctestutils.TestingGetPublicTableDescriptor(kvDB, s.Codec(), "t", "v")

// Update the view and refresh it.
if _, err := sqlDB.Exec(`
@@ -80,7 +79,7 @@ REFRESH MATERIALIZED VIEW t.v;

// The data should be deleted.
testutils.SucceedsSoon(t, func() error {
indexPrefix := keys.SystemSQLCodec.IndexPrefix(uint32(descBeforeRefresh.GetID()), uint32(descBeforeRefresh.GetPrimaryIndexID()))
indexPrefix := s.Codec().IndexPrefix(uint32(descBeforeRefresh.GetID()), uint32(descBeforeRefresh.GetPrimaryIndexID()))
indexEnd := indexPrefix.PrefixEnd()
if kvs, err := kvDB.Scan(ctx, indexPrefix, indexEnd, 0); err != nil {
t.Fatal(err)
@@ -98,7 +97,7 @@ func TestMaterializedViewRefreshVisibility(t *testing.T) {
defer log.Scope(t).Close(t)

ctx := context.Background()
params, _ := createTestServerParams()
params, _ := createTestServerParamsAllowTenants()

waitForCommit, waitToProceed, refreshDone := make(chan struct{}), make(chan struct{}), make(chan struct{})
params.Knobs = base.TestingKnobs{
@@ -146,7 +145,7 @@ func TestMaterializedViewCleansUpOnRefreshFailure(t *testing.T) {
defer log.Scope(t).Close(t)

ctx := context.Background()
params, _ := createTestServerParams()
params, _ := createTestServerParamsAllowTenants()

// Protects shouldError
var mu syncutil.Mutex
@@ -182,7 +181,7 @@ CREATE MATERIALIZED VIEW t.v AS SELECT x FROM t.t;
t.Fatal(err)
}

descBeforeRefresh := desctestutils.TestingGetPublicTableDescriptor(kvDB, keys.SystemSQLCodec, "t", "v")
descBeforeRefresh := desctestutils.TestingGetPublicTableDescriptor(kvDB, s.Codec(), "t", "v")

// Add a zone config to delete all table data.
_, err := sqltestutils.AddImmediateGCZoneConfig(sqlDB, descBeforeRefresh.GetID())
@@ -196,7 +195,7 @@ CREATE MATERIALIZED VIEW t.v AS SELECT x FROM t.t;
}

testutils.SucceedsSoon(t, func() error {
tableStart := keys.SystemSQLCodec.TablePrefix(uint32(descBeforeRefresh.GetID()))
tableStart := s.Codec().TablePrefix(uint32(descBeforeRefresh.GetID()))
tableEnd := tableStart.PrefixEnd()
if kvs, err := kvDB.Scan(ctx, tableStart, tableEnd, 0); err != nil {
t.Fatal(err)
@@ -212,7 +211,7 @@ func TestDropMaterializedView(t *testing.T) {
defer log.Scope(t).Close(t)

ctx := context.Background()
params, _ := createTestServerParams()
params, _ := createTestServerParamsAllowTenants()
s, sqlRaw, kvDB := serverutils.StartServer(t, params)
defer s.Stopper().Stop(ctx)

@@ -229,7 +228,7 @@ CREATE TABLE t.t (x INT);
INSERT INTO t.t VALUES (1), (2);
CREATE MATERIALIZED VIEW t.v AS SELECT x FROM t.t;
`)
desc := desctestutils.TestingGetPublicTableDescriptor(kvDB, keys.SystemSQLCodec, "t", "v")
desc := desctestutils.TestingGetPublicTableDescriptor(kvDB, s.Codec(), "t", "v")
// Add a zone config to delete all table data.
_, err := sqltestutils.AddImmediateGCZoneConfig(sqlRaw, desc.GetID())
require.NoError(t, err)
@@ -240,7 +239,7 @@ CREATE MATERIALIZED VIEW t.v AS SELECT x FROM t.t;

// All of the table data should be cleaned up.
testutils.SucceedsSoon(t, func() error {
tableStart := keys.SystemSQLCodec.TablePrefix(uint32(desc.GetID()))
tableStart := s.Codec().TablePrefix(uint32(desc.GetID()))
tableEnd := tableStart.PrefixEnd()
if kvs, err := kvDB.Scan(ctx, tableStart, tableEnd, 0); err != nil {
t.Fatal(err)
8 changes: 4 additions & 4 deletions pkg/sql/metric_test.go
Original file line number Diff line number Diff line change
@@ -53,7 +53,7 @@ func TestQueryCounts(t *testing.T) {
defer leaktest.AfterTest(t)()
defer log.Scope(t).Close(t)

params, _ := createTestServerParams()
params, _ := createTestServerParamsAllowTenants()
params.Knobs = base.TestingKnobs{
SQLLeaseManager: &lease.ManagerTestingKnobs{
// Disable SELECT called for delete orphaned leases to keep
@@ -174,7 +174,7 @@ func TestAbortCountConflictingWrites(t *testing.T) {
defer log.Scope(t).Close(t)

testutils.RunTrueAndFalse(t, "retry loop", func(t *testing.T, retry bool) {
params, cmdFilters := createTestServerParams()
params, cmdFilters := createTestServerParamsAllowTenants()
s, sqlDB, _ := serverutils.StartServer(t, params)
defer s.Stopper().Stop(context.Background())

@@ -279,7 +279,7 @@ func TestAbortCountConflictingWrites(t *testing.T) {
func TestAbortCountErrorDuringTransaction(t *testing.T) {
defer leaktest.AfterTest(t)()
defer log.Scope(t).Close(t)
params, _ := createTestServerParams()
params, _ := createTestServerParamsAllowTenants()
s, sqlDB, _ := serverutils.StartServer(t, params)
defer s.Stopper().Stop(context.Background())

@@ -314,7 +314,7 @@ func TestSavepointMetrics(t *testing.T) {
defer leaktest.AfterTest(t)()
defer log.Scope(t).Close(t)

params, _ := createTestServerParams()
params, _ := createTestServerParamsAllowTenants()
s, sqlDB, _ := serverutils.StartServer(t, params)
defer s.Stopper().Stop(context.Background())

4 changes: 2 additions & 2 deletions pkg/sql/mutation_test.go
Original file line number Diff line number Diff line change
@@ -30,7 +30,7 @@ func TestConstraintValidationBeforeBuffering(t *testing.T) {
defer leaktest.AfterTest(t)()
defer log.Scope(t).Close(t)

params, _ := createTestServerParams()
params, _ := createTestServerParamsAllowTenants()
s, db, _ := serverutils.StartServer(t, params)
defer s.Stopper().Stop(context.Background())

@@ -133,7 +133,7 @@ func TestReadCommittedImplicitPartitionUpsert(t *testing.T) {
}

ctx := context.Background()
params, _ := createTestServerParams()
params, _ := createTestServerParamsAllowTenants()
// If test is in Ready state, transition to ReadDone and wait for conflict.
params.Knobs = base.TestingKnobs{
SQLExecutor: &sql.ExecutorTestingKnobs{
21 changes: 12 additions & 9 deletions pkg/sql/mvcc_backfiller_test.go
Original file line number Diff line number Diff line change
@@ -59,7 +59,7 @@ func TestIndexBackfillMergeRetry(t *testing.T) {

skip.UnderDuress(t, "this test fails under duress")

params, _ := createTestServerParams()
params, _ := createTestServerParamsAllowTenants()

writesPopulated := false
var writesFn func() error
@@ -176,7 +176,7 @@ func TestIndexBackfillFractionTracking(t *testing.T) {
defer leaktest.AfterTest(t)()
defer log.Scope(t).Close(t)

params, _ := createTestServerParams()
params, _ := createTestServerParamsAllowTenants()

const (
rowCount = 2000
@@ -213,20 +213,21 @@ func TestIndexBackfillFractionTracking(t *testing.T) {
lastPercentage = fraction
}

var codec keys.SQLCodec
params.Knobs = base.TestingKnobs{
SQLSchemaChanger: &sql.SchemaChangerTestingKnobs{
BackfillChunkSize: chunkSize,
RunBeforeResume: func(id jobspb.JobID) error {
jobID = id
tableDesc := desctestutils.TestingGetTableDescriptor(kvDB, keys.SystemSQLCodec, "t", "public", "test")
tableDesc := desctestutils.TestingGetTableDescriptor(kvDB, codec, "t", "public", "test")
split(tableDesc, tableDesc.GetPrimaryIndex())
return nil
},
RunBeforeTempIndexMerge: func() {
for i := rowCount + 1; i < (rowCount*2)+1; i++ {
sqlRunner.Exec(t, "INSERT INTO t.test VALUES ($1, $1)", i)
}
tableDesc := desctestutils.TestingGetTableDescriptor(kvDB, keys.SystemSQLCodec, "t", "public", "test")
tableDesc := desctestutils.TestingGetTableDescriptor(kvDB, codec, "t", "public", "test")
tempIdx, err := findCorrespondingTemporaryIndex(tableDesc, "new_idx")
require.NoError(t, err)
split(tableDesc, tempIdx)
@@ -254,6 +255,7 @@ func TestIndexBackfillFractionTracking(t *testing.T) {
})
defer tc.Stopper().Stop(context.Background())
kvDB = tc.Server(0).DB()
codec = tc.Server(0).Codec()
sqlDB := tc.ServerConn(0)
_, err := sqlDB.Exec("SET CLUSTER SETTING sql.defaults.use_declarative_schema_changer='off';")
require.NoError(t, err)
@@ -289,7 +291,7 @@ func TestRaceWithIndexBackfillMerge(t *testing.T) {
maxValue = 200
}

params, _ := createTestServerParams()
params, _ := createTestServerParamsAllowTenants()
initMergeNotification := func() chan struct{} {
mu.Lock()
defer mu.Unlock()
@@ -484,7 +486,7 @@ func TestInvertedIndexMergeEveryStateWrite(t *testing.T) {
var initialRows = 10000
rowIdx := 0

params, _ := createTestServerParams()
params, _ := createTestServerParamsAllowTenants()
var writeMore func() error
params.Knobs = base.TestingKnobs{
SQLSchemaChanger: &sql.SchemaChangerTestingKnobs{
@@ -660,7 +662,8 @@ func splitIndex(
rkts := make(map[roachpb.RangeID]rangeAndKT)
for _, sp := range sps {

pik, err := randgen.TestingMakeSecondaryIndexKey(desc, index, keys.SystemSQLCodec, sp.Vals...)
pik, err := randgen.TestingMakeSecondaryIndexKey(
desc, index, tc.Server(0).Codec(), sp.Vals...)
if err != nil {
return err
}
@@ -741,7 +744,7 @@ func TestIndexMergeEveryChunkWrite(t *testing.T) {
rowIdx := 0
mergeSerializeCh := make(chan struct{}, 1)

params, _ := createTestServerParams()
params, _ := createTestServerParamsAllowTenants()
var writeMore func() error
params.Knobs = base.TestingKnobs{
DistSQL: &execinfra.TestingKnobs{
@@ -847,7 +850,7 @@ CREATE TABLE t.test (k INT PRIMARY KEY, v int);`
// Wait for the beginning of the Merge step of the schema change.
// Write data to the temp index and split it at the hazardous
// points.
params, _ := createTestServerParams()
params, _ := createTestServerParamsAllowTenants()
params.Knobs = base.TestingKnobs{
SQLDeclarativeSchemaChanger: &scexec.TestingKnobs{
BeforeStage: func(p scplan.Plan, stageIdx int) error {
5 changes: 2 additions & 3 deletions pkg/sql/privileged_accessor_test.go
Original file line number Diff line number Diff line change
@@ -9,7 +9,6 @@ import (
"context"
"testing"

"github.com/cockroachdb/cockroach/pkg/keys"
"github.com/cockroachdb/cockroach/pkg/kv"
"github.com/cockroachdb/cockroach/pkg/sql/catalog/catalogkeys"
"github.com/cockroachdb/cockroach/pkg/sql/catalog/descpb"
@@ -26,14 +25,14 @@ func TestLookupNamespaceID(t *testing.T) {
defer log.Scope(t).Close(t)

ctx := context.Background()
params, _ := createTestServerParams()
params, _ := createTestServerParamsAllowTenants()
s, sqlDB, kvDB := serverutils.StartServer(t, params)
defer s.Stopper().Stop(ctx)

err := kvDB.Txn(ctx, func(ctx context.Context, txn *kv.Txn) error {
return txn.Put(
ctx,
catalogkeys.EncodeNameKey(keys.SystemSQLCodec, &descpb.NameInfo{ParentID: 999, ParentSchemaID: 1000, Name: "bob"}),
catalogkeys.EncodeNameKey(s.Codec(), &descpb.NameInfo{ParentID: 999, ParentSchemaID: 1000, Name: "bob"}),
9999,
)
})
2 changes: 1 addition & 1 deletion pkg/sql/run_control_test.go
Original file line number Diff line number Diff line change
@@ -409,7 +409,7 @@ func TestCancelWithSubquery(t *testing.T) {
defer leaktest.AfterTest(t)()
defer log.Scope(t).Close(t)

params, _ := createTestServerParams()
params, _ := createTestServerParamsAllowTenants()
s, conn, _ := serverutils.StartServer(t, params)
defer s.Stopper().Stop(context.Background())

2 changes: 1 addition & 1 deletion pkg/sql/show_create_all_tables_builtin_test.go
Original file line number Diff line number Diff line change
@@ -23,7 +23,7 @@ func TestRecreateTables(t *testing.T) {
defer leaktest.AfterTest(t)()
defer log.Scope(t).Close(t)

params, _ := createTestServerParams()
params, _ := createTestServerParamsAllowTenants()
s, sqlDB, _ := serverutils.StartServer(t, params)
defer s.Stopper().Stop(context.Background())

10 changes: 5 additions & 5 deletions pkg/sql/show_test.go
Original file line number Diff line number Diff line change
@@ -294,7 +294,7 @@ func TestShowCreateView(t *testing.T) {
defer leaktest.AfterTest(t)()
defer log.Scope(t).Close(t)

params, _ := createTestServerParams()
params, _ := createTestServerParamsAllowTenants()
s, sqlDB, _ := serverutils.StartServer(t, params)
defer s.Stopper().Stop(context.Background())

@@ -391,7 +391,7 @@ func TestShowCreateSequence(t *testing.T) {
defer leaktest.AfterTest(t)()
defer log.Scope(t).Close(t)

params, _ := createTestServerParams()
params, _ := createTestServerParamsAllowTenants()
s, sqlDB, _ := serverutils.StartServer(t, params)
defer s.Stopper().Stop(context.Background())

@@ -971,7 +971,7 @@ func TestShowSessionPrivileges(t *testing.T) {
defer leaktest.AfterTest(t)()
defer log.Scope(t).Close(t)

params, _ := createTestServerParams()
params, _ := createTestServerParamsAllowTenants()
params.Insecure = true
s, rawSQLDBroot, _ := serverutils.StartServer(t, params)
sqlDBroot := sqlutils.MakeSQLRunner(rawSQLDBroot)
@@ -1054,7 +1054,7 @@ func TestShowRedactedActiveStatements(t *testing.T) {
defer leaktest.AfterTest(t)()
defer log.Scope(t).Close(t)

params, _ := createTestServerParams()
params, _ := createTestServerParamsAllowTenants()
params.Insecure = true
ctx, cancel := context.WithCancel(context.Background())
s, rawSQLDBroot, _ := serverutils.StartServer(t, params)
@@ -1215,7 +1215,7 @@ func TestShowRedactedSessions(t *testing.T) {
defer leaktest.AfterTest(t)()
defer log.Scope(t).Close(t)

params, _ := createTestServerParams()
params, _ := createTestServerParamsAllowTenants()
params.Insecure = true
ctx, cancel := context.WithCancel(context.Background())
s, rawSQLDBroot, _ := serverutils.StartServer(t, params)
2 changes: 1 addition & 1 deletion pkg/sql/sort_test.go
Original file line number Diff line number Diff line change
@@ -18,7 +18,7 @@ func TestOrderByRandom(t *testing.T) {
defer leaktest.AfterTest(t)()
defer log.Scope(t).Close(t)

params, _ := createTestServerParams()
params, _ := createTestServerParamsAllowTenants()
s, sqlDB, _ := serverutils.StartServer(t, params)
defer s.Stopper().Stop(context.Background())

2 changes: 1 addition & 1 deletion pkg/sql/split_test.go
Original file line number Diff line number Diff line change
@@ -22,7 +22,7 @@ func TestSplitAt(t *testing.T) {
defer leaktest.AfterTest(t)()
defer log.Scope(t).Close(t)

params, _ := createTestServerParams()
params, _ := createTestServerParamsAllowTenants()
s, db, _ := serverutils.StartServer(t, params)
defer s.Stopper().Stop(context.Background())

9 changes: 4 additions & 5 deletions pkg/sql/table_ref_test.go
Original file line number Diff line number Diff line change
@@ -11,7 +11,6 @@ import (
"regexp"
"testing"

"github.com/cockroachdb/cockroach/pkg/keys"
"github.com/cockroachdb/cockroach/pkg/sql/catalog/descpb"
"github.com/cockroachdb/cockroach/pkg/sql/catalog/desctestutils"
"github.com/cockroachdb/cockroach/pkg/testutils/serverutils"
@@ -23,7 +22,7 @@ func TestTableRefs(t *testing.T) {
defer leaktest.AfterTest(t)()
defer log.Scope(t).Close(t)

params, _ := createTestServerParams()
params, _ := createTestServerParamsAllowTenants()
s, db, kvDB := serverutils.StartServer(t, params)
defer s.Stopper().Stop(context.Background())

@@ -40,7 +39,7 @@ CREATE INDEX bc ON test.t(b, c);
}

// Retrieve the numeric descriptors.
tableDesc := desctestutils.TestingGetPublicTableDescriptor(kvDB, keys.SystemSQLCodec, "test", "t")
tableDesc := desctestutils.TestingGetPublicTableDescriptor(kvDB, s.Codec(), "test", "t")
tID := tableDesc.GetID()
var aID, bID, cID descpb.ColumnID
for _, c := range tableDesc.PublicColumns() {
@@ -55,7 +54,7 @@ CREATE INDEX bc ON test.t(b, c);
}

// Retrieve the numeric descriptors.
tableDesc = desctestutils.TestingGetPublicTableDescriptor(kvDB, keys.SystemSQLCodec, "test", "hidden")
tableDesc = desctestutils.TestingGetPublicTableDescriptor(kvDB, s.Codec(), "test", "hidden")
tIDHidden := tableDesc.GetID()
var rowIDHidden descpb.ColumnID
for _, c := range tableDesc.PublicColumns() {
@@ -78,7 +77,7 @@ ALTER TABLE test.t DROP COLUMN xx;
t.Fatal(err)
}

tableDesc = desctestutils.TestingGetPublicTableDescriptor(kvDB, keys.SystemSQLCodec, "test", "t")
tableDesc = desctestutils.TestingGetPublicTableDescriptor(kvDB, s.Codec(), "test", "t")
pkID := tableDesc.GetPrimaryIndexID()
secID := tableDesc.PublicNonPrimaryIndexes()[0].GetID()

14 changes: 7 additions & 7 deletions pkg/sql/type_change_test.go
Original file line number Diff line number Diff line change
@@ -36,7 +36,7 @@ func TestTypeSchemaChangeRetriesTransparently(t *testing.T) {
// Protects errorReturned.
var mu syncutil.Mutex
errorReturned := false
params, _ := createTestServerParams()
params, _ := createTestServerParamsAllowTenants()
params.Knobs.SQLTypeSchemaChanger = &sql.TypeSchemaChangerTestingKnobs{
RunBeforeExec: func() error {
mu.Lock()
@@ -81,7 +81,7 @@ func TestFailedTypeSchemaChangeRetriesTransparently(t *testing.T) {
var mu syncutil.Mutex
// Ensures just the first try to cleanup returns a retryable error.
errReturned := false
params, _ := createTestServerParams()
params, _ := createTestServerParamsAllowTenants()
cleanupSuccessfullyFinished := make(chan struct{})
params.Knobs.SQLTypeSchemaChanger = &sql.TypeSchemaChangerTestingKnobs{
RunBeforeExec: func() error {
@@ -141,7 +141,7 @@ func TestFailedTypeSchemaChangeIgnoresDrops(t *testing.T) {
defer log.Scope(t).Close(t)

ctx := context.Background()
params, _ := createTestServerParams()
params, _ := createTestServerParamsAllowTenants()
startDrop := make(chan struct{})
dropFinished := make(chan struct{})
cancelled := atomic.Bool{}
@@ -201,7 +201,7 @@ func TestAddDropValuesInTransaction(t *testing.T) {

ctx := context.Background()

params, _ := createTestServerParams()
params, _ := createTestServerParamsAllowTenants()
// Decrease the adopt loop interval so that retries happen quickly.
params.Knobs.JobsTestingKnobs = jobs.NewTestingKnobsWithShortIntervals()

@@ -346,7 +346,7 @@ func TestEnumMemberTransitionIsolation(t *testing.T) {
defer leaktest.AfterTest(t)()
defer log.Scope(t).Close(t)

params, _ := createTestServerParams()
params, _ := createTestServerParamsAllowTenants()
// Protects blocker.
var mu syncutil.Mutex
blocker := make(chan struct{})
@@ -493,7 +493,7 @@ func TestTypeChangeJobCancelSemantics(t *testing.T) {
for _, tc := range testCases {
t.Run(tc.desc, func(t *testing.T) {

params, _ := createTestServerParams()
params, _ := createTestServerParamsAllowTenants()

// Wait groups for synchronizing various parts of the test.
typeSchemaChangeStarted := make(chan struct{})
@@ -583,7 +583,7 @@ func TestAddDropEnumValues(t *testing.T) {
defer ccl.TestingEnableEnterprise()()
ctx := context.Background()

params, _ := createTestServerParams()
params, _ := createTestServerParamsAllowTenants()
// Decrease the adopt loop interval so that retries happen quickly.
params.Knobs.JobsTestingKnobs = jobs.NewTestingKnobsWithShortIntervals()

13 changes: 12 additions & 1 deletion pkg/sql/unsplit_test.go
Original file line number Diff line number Diff line change
@@ -13,18 +13,20 @@ import (

"github.com/cockroachdb/cockroach/pkg/base"
"github.com/cockroachdb/cockroach/pkg/kv/kvserver"
"github.com/cockroachdb/cockroach/pkg/multitenant/tenantcapabilities"
"github.com/cockroachdb/cockroach/pkg/roachpb"
"github.com/cockroachdb/cockroach/pkg/testutils/serverutils"
"github.com/cockroachdb/cockroach/pkg/testutils/sqlutils"
"github.com/cockroachdb/cockroach/pkg/util/leaktest"
"github.com/cockroachdb/cockroach/pkg/util/log"
"github.com/stretchr/testify/require"
)

func TestUnsplitAt(t *testing.T) {
defer leaktest.AfterTest(t)()
defer log.Scope(t).Close(t)

params, _ := createTestServerParams()
params, _ := createTestServerParamsAllowTenants()
// TODO(jeffreyxiao): Disable the merge queue due to a race condition. The
// merge queue might issue an AdminMerge and before the actual merge happens,
// the LHS of the merge is manually split and is later merged even though a
@@ -41,6 +43,15 @@ func TestUnsplitAt(t *testing.T) {
s, db, _ := serverutils.StartServer(t, params)
defer s.Stopper().Stop(context.Background())

if s.DeploymentMode().IsExternal() {
require.NoError(t, s.GrantTenantCapabilities(
context.Background(), serverutils.TestTenantID(),
map[tenantcapabilities.ID]string{
tenantcapabilities.CanAdminSplit: "true",
tenantcapabilities.CanAdminUnsplit: "true",
}))
}

r := sqlutils.MakeSQLRunner(db)

r.Exec(t, "CREATE DATABASE d")
4 changes: 2 additions & 2 deletions pkg/sql/zone_test.go
Original file line number Diff line number Diff line change
@@ -234,7 +234,7 @@ func TestZoneInheritField(t *testing.T) {
defer leaktest.AfterTest(t)()
defer log.Scope(t).Close(t)

params, _ := createTestServerParams()
params, _ := createTestServerParamsAllowTenants()
s, db, _ := serverutils.StartServer(t, params)
defer s.Stopper().Stop(context.Background())

@@ -281,7 +281,7 @@ func TestInvalidSetShowZones(t *testing.T) {
defer leaktest.AfterTest(t)()
defer log.Scope(t).Close(t)

params, _ := createTestServerParams()
params, _ := createTestServerParamsAllowTenants()
s, db, _ := serverutils.StartServer(t, params)
defer s.Stopper().Stop(context.Background())