Skip to content

Commit 9b62c5a

Browse files
authored
distsql: tiny refactor to make the code more robust (#10557)
1 parent 545afc5 commit 9b62c5a

File tree

1 file changed

+9
-9
lines changed

1 file changed

+9
-9
lines changed

distsql/select_result.go

+9-9
Original file line numberDiff line numberDiff line change
@@ -98,21 +98,21 @@ func (r *selectResult) fetch(ctx context.Context) {
9898
metrics.DistSQLQueryHistgram.WithLabelValues(r.label, r.sqlType).Observe(duration.Seconds())
9999
}()
100100
for {
101+
var result resultWithErr
101102
resultSubset, err := r.resp.Next(ctx)
102103
if err != nil {
103-
r.results <- resultWithErr{err: err}
104-
return
105-
}
106-
if resultSubset == nil {
104+
result.err = err
105+
} else if resultSubset == nil {
107106
return
108-
}
109-
110-
if r.memTracker != nil {
111-
r.memTracker.Consume(int64(resultSubset.MemSize()))
107+
} else {
108+
result.result = resultSubset
109+
if r.memTracker != nil {
110+
r.memTracker.Consume(int64(resultSubset.MemSize()))
111+
}
112112
}
113113

114114
select {
115-
case r.results <- resultWithErr{result: resultSubset}:
115+
case r.results <- result:
116116
case <-r.closed:
117117
// If selectResult called Close() already, make fetch goroutine exit.
118118
return

0 commit comments

Comments
 (0)