From b472581ac48889a810a8be0f90b518704a16fe0d Mon Sep 17 00:00:00 2001 From: Han Fei Date: Wed, 29 Nov 2017 12:21:51 +0800 Subject: [PATCH] address comments. --- executor/builder.go | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/executor/builder.go b/executor/builder.go index 8c9ae29a383be..64b157c82619a 100644 --- a/executor/builder.go +++ b/executor/builder.go @@ -320,6 +320,9 @@ func (b *executorBuilder) buildInsert(v *plan.Insert) Executor { needFillDefaultValues: v.NeedFillDefaultValue, } ivs.SelectExec = b.build(v.SelectPlan) + if b.err != nil { + return nil + } ivs.Table = v.Table if v.IsReplace { return b.buildReplace(ivs) @@ -796,9 +799,13 @@ func (b *executorBuilder) buildUpdate(v *plan.Update) Executor { for id := range v.SelectPlan.Schema().TblID2Handle { tblID2table[id], _ = b.is.TableByID(id) } + selExec := b.build(v.SelectPlan) + if b.err != nil { + return nil + } return &UpdateExec{ baseExecutor: newBaseExecutor(nil, b.ctx), - SelectExec: b.build(v.SelectPlan), + SelectExec: selExec, OrderedList: v.OrderedList, tblID2table: tblID2table, IgnoreErr: v.IgnoreErr, @@ -810,9 +817,13 @@ func (b *executorBuilder) buildDelete(v *plan.Delete) Executor { for id := range v.SelectPlan.Schema().TblID2Handle { tblID2table[id], _ = b.is.TableByID(id) } + selExec := b.build(v.SelectPlan) + if b.err != nil { + return nil + } return &DeleteExec{ baseExecutor: newBaseExecutor(nil, b.ctx), - SelectExec: b.build(v.SelectPlan), + SelectExec: selExec, Tables: v.Tables, IsMultiTable: v.IsMultiTable, tblID2Table: tblID2table,