Skip to content

Commit f2f56df

Browse files
committed
added Index() == -1
1 parent 28e0c63 commit f2f56df

File tree

5 files changed

+20
-8
lines changed

5 files changed

+20
-8
lines changed

internal/query/errors.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,9 @@ import (
66

77
var (
88
ErrNotImplemented = errors.New("not implemented yet")
9-
errWrongNextResultSetIndex = errors.New("wrong result set rowIndex")
9+
errWrongNextResultSetIndex = errors.New("wrong result set index")
1010
errClosedResult = errors.New("result closed early")
11-
errWrongResultSetIndex = errors.New("critical violation of the logic - wrong result set rowIndex")
11+
errWrongResultSetIndex = errors.New("critical violation of the logic - wrong result set index")
1212
errMoreThanOneRow = errors.New("unexpected more than one row in result set")
1313
errMoreThanOneResultSet = errors.New("unexpected more than one result set")
1414
errNoResultSets = errors.New("no result sets")

internal/query/result.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -191,7 +191,7 @@ func (r *result) nextResultSet(ctx context.Context) (_ *resultSet, err error) {
191191
}
192192
if part.GetResultSetIndex() < r.resultSetIndex {
193193
return nil, xerrors.WithStackTrace(fmt.Errorf(
194-
"next result set rowIndex %d less than last result set rowIndex %d: %w",
194+
"next result set rowIndex %d less than last result set index %d: %w",
195195
part.GetResultSetIndex(), r.resultSetIndex, errWrongNextResultSetIndex,
196196
))
197197
}
@@ -231,7 +231,7 @@ func (r *result) getNextResultSetPart(
231231
r.lastPart = part
232232
if part.GetResultSetIndex() > nextResultSetIndex {
233233
return nil, xerrors.WithStackTrace(fmt.Errorf(
234-
"result set (rowIndex=%d) receive part (rowIndex=%d) for next result set: %w",
234+
"result set (index=%d) receive part (index=%d) for next result set: %w",
235235
nextResultSetIndex, part.GetResultSetIndex(), io.EOF,
236236
))
237237
}

internal/query/result_set.go

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -87,6 +87,10 @@ func (rs *materializedResultSet) NextRow(ctx context.Context) (query.Row, error)
8787
}
8888

8989
func (rs *materializedResultSet) Index() int {
90+
if rs == nil {
91+
return -1
92+
}
93+
9094
return rs.index
9195
}
9296

@@ -154,7 +158,7 @@ func (rs *resultSet) nextRow(ctx context.Context) (*row, error) {
154158
close(rs.done)
155159

156160
return nil, xerrors.WithStackTrace(fmt.Errorf(
157-
"received part with result set rowIndex = %d, current result set rowIndex = %d: %w",
161+
"received part with result set index = %d, current result set index = %d: %w",
158162
rs.index, rs.currentPart.GetResultSetIndex(), errWrongResultSetIndex,
159163
))
160164
}
@@ -178,5 +182,9 @@ func (rs *resultSet) NextRow(ctx context.Context) (_ query.Row, err error) {
178182
}
179183

180184
func (rs *resultSet) Index() int {
185+
if rs == nil {
186+
return -1
187+
}
188+
181189
return int(rs.index)
182190
}

internal/query/result_set_range_test.go

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -681,7 +681,8 @@ func TestResultSetRange(t *testing.T) {
681681
}
682682
if resultSetIndex := part.GetResultSetIndex(); resultSetIndex != 0 {
683683
return nil, xerrors.WithStackTrace(fmt.Errorf(
684-
"critical violation of the logic: wrong result set rowIndex: %d != %d",
684+
"%w: %d != %d",
685+
errWrongNextResultSetIndex,
685686
resultSetIndex, 0,
686687
))
687688
}
@@ -771,7 +772,8 @@ func TestResultSetRange(t *testing.T) {
771772
}
772773
if resultSetIndex := part.GetResultSetIndex(); resultSetIndex != 0 {
773774
return nil, xerrors.WithStackTrace(fmt.Errorf(
774-
"critical violation of the logic: wrong result set rowIndex: %d != %d",
775+
"%w: %d != %d",
776+
errWrongNextResultSetIndex,
775777
resultSetIndex, 0,
776778
))
777779
}

internal/query/result_test.go

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -442,8 +442,10 @@ func TestResultNextResultSet(t *testing.T) {
442442
}
443443
{
444444
t.Log("nextResultSet")
445-
_, err := r.nextResultSet(context.Background())
445+
rs, err := r.nextResultSet(context.Background())
446446
require.ErrorIs(t, err, errClosedResult)
447+
require.Nil(t, rs)
448+
require.Equal(t, -1, rs.Index())
447449
}
448450
t.Log("check final error")
449451
require.NoError(t, r.Err())

0 commit comments

Comments
 (0)