Merge pull request #892 from pingcap/shenli/fix-sqllogic-select

*: Fix bug in AggregateExec.Close()
This commit is contained in:
Ewan Chou
2016-02-04 14:58:56 +08:00
2 changed files with 11 additions and 3 deletions

View File

@ -116,4 +116,12 @@ func (s *testAggFuncSuite) TestCount(c *C) {
val, err = evaluator.Eval(ctx, fc2)
c.Assert(err, IsNil)
c.Assert(val, Equals, int64(2))
agg.Close()
val, err = evaluator.Eval(ctx, fc1)
c.Assert(err, IsNil)
c.Assert(val, IsNil)
val, err = evaluator.Eval(ctx, fc2)
c.Assert(err, IsNil)
c.Assert(val, Equals, int64(0))
}

View File

@ -1074,11 +1074,11 @@ func (e *AggregateExec) innerNext() (bool, error) {
// Close implements Executor Close interface.
func (e *AggregateExec) Close() error {
if e.Src != nil {
return e.Src.Close()
}
for _, af := range e.AggFuncs {
af.Clear()
}
if e.Src != nil {
return e.Src.Close()
}
return nil
}