diff --git a/executor/builder.go b/executor/builder.go index 9bb51553e06fb..b33c57d3de234 100644 --- a/executor/builder.go +++ b/executor/builder.go @@ -3285,7 +3285,11 @@ func (b *executorBuilder) buildIndexLookUpMergeJoin(v *plannercore.PhysicalIndex } func (b *executorBuilder) buildIndexNestedLoopHashJoin(v *plannercore.PhysicalIndexHashJoin) Executor { - e := b.buildIndexLookUpJoin(&(v.PhysicalIndexJoin)).(*IndexLookUpJoin) + join := b.buildIndexLookUpJoin(&(v.PhysicalIndexJoin)) + if b.err != nil { + return nil + } + e := join.(*IndexLookUpJoin) idxHash := &IndexNestedLoopHashJoin{ IndexLookUpJoin: *e, keepOuterOrder: v.KeepOuterOrder,