Skip to content

Commit

Permalink
executor: fix data race on the IndexMergeReaderExecutor (#39513)
Browse files Browse the repository at this point in the history
close #39514
  • Loading branch information
hawkingrei authored Dec 1, 2022
1 parent c8fdfbc commit d354d8d
Showing 1 changed file with 6 additions and 6 deletions.
12 changes: 6 additions & 6 deletions executor/index_merge_reader.go
Original file line number Diff line number Diff line change
Expand Up @@ -139,7 +139,12 @@ func (e *IndexMergeReaderExecutor) Table() table.Table {
func (e *IndexMergeReaderExecutor) Open(ctx context.Context) (err error) {
e.keyRanges = make([][]kv.KeyRange, 0, len(e.partialPlans))
e.initRuntimeStats()

if e.isCorColInTableFilter {
e.tableRequest.Executors, err = constructDistExec(e.ctx, e.tblPlans)
if err != nil {
return err
}
}
if err = e.rebuildRangeForCorCol(); err != nil {
return err
}
Expand Down Expand Up @@ -630,11 +635,6 @@ func (e *IndexMergeReaderExecutor) buildFinalTableReader(ctx context.Context, tb
plans: e.tblPlans,
netDataSize: e.dataAvgRowSize * float64(len(handles)),
}
if e.isCorColInTableFilter {
if tableReaderExec.dagPB.Executors, err = constructDistExec(e.ctx, e.tblPlans); err != nil {
return nil, err
}
}
tableReaderExec.buildVirtualColumnInfo()
// Reorder handles because SplitKeyRangesByLocations() requires startKey of kvRanges is ordered.
// Also it's good for performance.
Expand Down

0 comments on commit d354d8d

Please sign in to comment.