Skip to content

Commit a7bdedf

Browse files
craig[bot]yuzefovich
andcommitted
Merge #155782
155782: sql/inspect: enable two tests for secondary tenants r=yuzefovich a=yuzefovich We simply needed to plumb the right codec. Epic: CRDB-48945 Release note: None Co-authored-by: Yahor Yuzefovich <[email protected]>
2 parents 2593003 + d4f9f80 commit a7bdedf

File tree

2 files changed

+18
-17
lines changed

2 files changed

+18
-17
lines changed

pkg/sql/inspect/index_consistency_check_test.go

Lines changed: 13 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -51,14 +51,14 @@ func requireCheckCountsMatch(t *testing.T, r *sqlutils.SQLRunner, jobID int64) {
5151
// Returns the encoded index entry, expecting exactly one entry to be produced.
5252
// Returns an error if the encoding fails or if multiple index entries are generated.
5353
func encodeSecondaryIndexEntry(
54-
row []tree.Datum, tableDesc catalog.TableDescriptor, index catalog.Index,
54+
codec keys.SQLCodec, row []tree.Datum, tableDesc catalog.TableDescriptor, index catalog.Index,
5555
) (rowenc.IndexEntry, error) {
5656
var colIDtoRowIndex catalog.TableColMap
5757
for i, c := range tableDesc.PublicColumns() {
5858
colIDtoRowIndex.Set(c.GetID(), i)
5959
}
6060
indexEntries, err := rowenc.EncodeSecondaryIndex(
61-
context.Background(), keys.SystemSQLCodec, tableDesc, index,
61+
context.Background(), codec, tableDesc, index,
6262
colIDtoRowIndex, row, rowenc.EmptyVectorIndexEncodingHelper, true, /* includeEmpty */
6363
)
6464
if err != nil {
@@ -77,12 +77,13 @@ func encodeSecondaryIndexEntry(
7777
// if multiple entries are produced.
7878
func deleteSecondaryIndexEntry(
7979
ctx context.Context,
80+
codec keys.SQLCodec,
8081
row []tree.Datum,
8182
kvDB *kv.DB,
8283
tableDesc catalog.TableDescriptor,
8384
index catalog.Index,
8485
) error {
85-
entry, err := encodeSecondaryIndexEntry(row, tableDesc, index)
86+
entry, err := encodeSecondaryIndexEntry(codec, row, tableDesc, index)
8687
if err != nil {
8788
return err
8889
}
@@ -96,12 +97,13 @@ func deleteSecondaryIndexEntry(
9697
// if multiple entries are produced.
9798
func insertSecondaryIndexEntry(
9899
ctx context.Context,
100+
codec keys.SQLCodec,
99101
row []tree.Datum,
100102
kvDB *kv.DB,
101103
tableDesc catalog.TableDescriptor,
102104
index catalog.Index,
103105
) error {
104-
entry, err := encodeSecondaryIndexEntry(row, tableDesc, index)
106+
entry, err := encodeSecondaryIndexEntry(codec, row, tableDesc, index)
105107
if err != nil {
106108
return err
107109
}
@@ -119,7 +121,6 @@ func TestDetectIndexConsistencyErrors(t *testing.T) {
119121
cl := serverutils.StartCluster(t, numNodes, base.TestClusterArgs{
120122
ReplicationMode: base.ReplicationManual,
121123
ServerArgs: base.TestServerArgs{
122-
DefaultTestTenant: base.TestIsSpecificToStorageLayerAndNeedsASystemTenant,
123124
Knobs: base.TestingKnobs{
124125
Inspect: &sql.InspectTestingKnobs{
125126
InspectIssueLogger: issueLogger,
@@ -131,11 +132,12 @@ func TestDetectIndexConsistencyErrors(t *testing.T) {
131132
},
132133
})
133134
defer cl.Stopper().Stop(ctx)
135+
s := cl.ApplicationLayer(0)
134136

135-
db := cl.ServerConn(0)
136-
kvDB := cl.Server(0).DB()
137-
codec := cl.Server(0).Codec()
138-
ie := cl.Server(0).InternalExecutor().(*sql.InternalExecutor)
137+
db := s.SQLConn(t)
138+
kvDB := s.DB()
139+
codec := s.Codec()
140+
ie := s.InternalExecutor().(*sql.InternalExecutor)
139141
r := sqlutils.MakeSQLRunner(db)
140142

141143
for _, tc := range []struct {
@@ -411,7 +413,7 @@ func TestDetectIndexConsistencyErrors(t *testing.T) {
411413
tc.missingIndexEntrySelector)
412414
t.Logf("Corrupting %d rows that match filter by deleting secondary index keys: %s", len(rows), tc.missingIndexEntrySelector)
413415
for _, row := range rows {
414-
err = deleteSecondaryIndexEntry(ctx, row, kvDB, tableDesc, secIndex)
416+
err = deleteSecondaryIndexEntry(ctx, codec, row, kvDB, tableDesc, secIndex)
415417
require.NoError(t, err)
416418
}
417419
}
@@ -425,7 +427,7 @@ func TestDetectIndexConsistencyErrors(t *testing.T) {
425427
t.Logf("Corrupting %d rows by inserting keys into secondary index returned by this query: %s",
426428
len(rows), tc.danglingIndexEntryInsertQuery)
427429
for _, row := range rows {
428-
err = insertSecondaryIndexEntry(ctx, row, kvDB, tableDesc, secIndex)
430+
err = insertSecondaryIndexEntry(ctx, codec, row, kvDB, tableDesc, secIndex)
429431
require.NoError(t, err)
430432
}
431433
}

pkg/sql/inspect/inspect_metrics_test.go

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -27,10 +27,9 @@ func TestInspectMetrics(t *testing.T) {
2727
defer log.Scope(t).Close(t)
2828

2929
ctx := context.Background()
30-
s, db, _ := serverutils.StartServer(t, base.TestServerArgs{
31-
DefaultTestTenant: base.TestIsSpecificToStorageLayerAndNeedsASystemTenant,
32-
})
33-
defer s.Stopper().Stop(ctx)
30+
srv, db, _ := serverutils.StartServer(t, base.TestServerArgs{})
31+
defer srv.Stopper().Stop(ctx)
32+
s := srv.ApplicationLayer()
3433

3534
runner := sqlutils.MakeSQLRunner(db)
3635
runner.Exec(t, `
@@ -44,7 +43,7 @@ func TestInspectMetrics(t *testing.T) {
4443
INSERT INTO db.t VALUES (1, 2), (2, 3);
4544
`)
4645

47-
execCfg := s.ApplicationLayer().ExecutorConfig().(sql.ExecutorConfig)
46+
execCfg := s.ExecutorConfig().(sql.ExecutorConfig)
4847
metrics := execCfg.JobRegistry.MetricsStruct().Inspect.(*InspectMetrics)
4948

5049
initialRuns := metrics.Runs.Count()
@@ -68,7 +67,7 @@ func TestInspectMetrics(t *testing.T) {
6867
tree.NewDInt(1), // id
6968
tree.NewDInt(2), // val
7069
}
71-
err := deleteSecondaryIndexEntry(ctx, row, kvDB, tableDesc, secIndex)
70+
err := deleteSecondaryIndexEntry(ctx, codec, row, kvDB, tableDesc, secIndex)
7271
require.NoError(t, err)
7372

7473
// Second run: with corruption, should detect the missing index entry.

0 commit comments

Comments
 (0)