From 6f8db3167ca56763fcc52835973b9ef20cf987c6 Mon Sep 17 00:00:00 2001 From: Jian Zhang Date: Mon, 13 Nov 2017 11:37:00 +0800 Subject: [PATCH] executor: pre-allocate memory for slices (#5071) --- executor/builder.go | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/executor/builder.go b/executor/builder.go index d018f3e5f357e..43b13a9c51e2c 100644 --- a/executor/builder.go +++ b/executor/builder.go @@ -545,7 +545,8 @@ func (b *executorBuilder) buildMergeJoin(v *plan.PhysicalMergeJoin) Executor { } func (b *executorBuilder) buildHashJoin(v *plan.PhysicalHashJoin) Executor { - var leftHashKey, rightHashKey []*expression.Column + leftHashKey := make([]*expression.Column, 0, len(v.EqualConditions)) + rightHashKey := make([]*expression.Column, 0, len(v.EqualConditions)) for _, eqCond := range v.EqualConditions { ln, _ := eqCond.GetArgs()[0].(*expression.Column) rn, _ := eqCond.GetArgs()[1].(*expression.Column) @@ -584,7 +585,8 @@ func (b *executorBuilder) buildHashJoin(v *plan.PhysicalHashJoin) Executor { } func (b *executorBuilder) buildSemiJoin(v *plan.PhysicalHashSemiJoin) *HashSemiJoinExec { - var leftHashKey, rightHashKey []*expression.Column + leftHashKey := make([]*expression.Column, 0, len(v.EqualConditions)) + rightHashKey := make([]*expression.Column, 0, len(v.EqualConditions)) for _, eqCond := range v.EqualConditions { ln, _ := eqCond.GetArgs()[0].(*expression.Column) rn, _ := eqCond.GetArgs()[1].(*expression.Column)