Skip to content

Commit 276a7a7

Browse files
committed
fetcher: return spanID from NextRowDecoded()
Previously, Fetcher.NextRowDecoded() discarded the spanID it got from Fetcher.NextRow(). This information is needed for a future use of NextRowDecoded(), so this patch passes it through. Existing users ignore this return value. Informs: #146046 Release note: None
1 parent 537c161 commit 276a7a7

File tree

6 files changed

+14
-14
lines changed

6 files changed

+14
-14
lines changed

pkg/sql/delete_preserving_index_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -802,7 +802,7 @@ func fetchIndex(
802802
))
803803
var rows []tree.Datums
804804
for {
805-
datums, err := fetcher.NextRowDecoded(ctx)
805+
datums, _, err := fetcher.NextRowDecoded(ctx)
806806
require.NoError(t, err)
807807
if datums == nil {
808808
break

pkg/sql/indexbackfiller_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -420,7 +420,7 @@ INSERT INTO foo VALUES (1), (10), (100);
420420
))
421421
var rows []tree.Datums
422422
for {
423-
datums, err := fetcher.NextRowDecoded(ctx)
423+
datums, _, err := fetcher.NextRowDecoded(ctx)
424424
require.NoError(t, err)
425425
if datums == nil {
426426
break

pkg/sql/row/errors.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -287,7 +287,7 @@ func DecodeRowInfo(
287287
if err := rf.ConsumeKVProvider(ctx, &f); err != nil {
288288
return nil, nil, nil, err
289289
}
290-
datums, err := rf.NextRowDecoded(ctx)
290+
datums, _, err := rf.NextRowDecoded(ctx)
291291
if err != nil {
292292
return nil, nil, nil, err
293293
}

pkg/sql/row/fetcher.go

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1221,13 +1221,13 @@ func (rf *Fetcher) NextRowInto(
12211221
// NextRowDecoded calls NextRow and decodes the EncDatumRow into a Datums.
12221222
// The Datums should not be modified and is only valid until the next call.
12231223
// When there are no more rows, the Datums is nil.
1224-
func (rf *Fetcher) NextRowDecoded(ctx context.Context) (datums tree.Datums, err error) {
1225-
row, _, err := rf.NextRow(ctx)
1224+
func (rf *Fetcher) NextRowDecoded(ctx context.Context) (datums tree.Datums, spanID int, err error) {
1225+
row, spanID, err := rf.NextRow(ctx)
12261226
if err != nil {
1227-
return nil, err
1227+
return nil, 0, err
12281228
}
12291229
if row == nil {
1230-
return nil, nil
1230+
return nil, 0, nil
12311231
}
12321232

12331233
for i, encDatum := range row {
@@ -1236,12 +1236,12 @@ func (rf *Fetcher) NextRowDecoded(ctx context.Context) (datums tree.Datums, err
12361236
continue
12371237
}
12381238
if err := encDatum.EnsureDecoded(rf.table.spec.FetchedColumns[i].Type, rf.args.Alloc); err != nil {
1239-
return nil, err
1239+
return nil, 0, err
12401240
}
12411241
rf.table.decodedRow[i] = encDatum.Datum
12421242
}
12431243

1244-
return rf.table.decodedRow, nil
1244+
return rf.table.decodedRow, spanID, nil
12451245
}
12461246

12471247
// NextRowDecodedInto calls NextRow and decodes the EncDatumRow into Datums,

pkg/sql/row/fetcher_mvcc_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -135,7 +135,7 @@ func TestRowFetcherMVCCMetadata(t *testing.T) {
135135
}
136136
var rows []rowWithMVCCMetadata
137137
for {
138-
datums, err := rf.NextRowDecoded(ctx)
138+
datums, _, err := rf.NextRowDecoded(ctx)
139139
if err != nil {
140140
t.Fatal(err)
141141
}

pkg/sql/row/fetcher_test.go

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -167,7 +167,7 @@ func TestNextRowSingle(t *testing.T) {
167167

168168
expectedVals := [2]int64{1, 1}
169169
for {
170-
datums, err := rf.NextRowDecoded(ctx)
170+
datums, _, err := rf.NextRowDecoded(ctx)
171171
if err != nil {
172172
t.Fatal(err)
173173
}
@@ -272,7 +272,7 @@ func TestNextRowBatchLimiting(t *testing.T) {
272272

273273
expectedVals := [2]int64{1, 1}
274274
for {
275-
datums, err := rf.NextRowDecoded(ctx)
275+
datums, _, err := rf.NextRowDecoded(ctx)
276276
if err != nil {
277277
t.Fatal(err)
278278
}
@@ -450,7 +450,7 @@ INDEX(c)
450450
for {
451451
// Just try to grab the row - we don't need to validate the contents
452452
// in this test.
453-
datums, err := rf.NextRowDecoded(ctx)
453+
datums, _, err := rf.NextRowDecoded(ctx)
454454
if err != nil {
455455
t.Fatal(err)
456456
}
@@ -607,7 +607,7 @@ func TestNextRowSecondaryIndex(t *testing.T) {
607607
nullCount := 0
608608
var prevIdxVal int64
609609
for {
610-
datums, err := rf.NextRowDecoded(ctx)
610+
datums, _, err := rf.NextRowDecoded(ctx)
611611
if err != nil {
612612
t.Fatal(err)
613613
}

0 commit comments

Comments
 (0)