when semijoin=on
When setting the aggregate function as having no rows to report
the function no_rows_in_result() was calling Item_sum::reset().
However this function in addition to cleaning up the aggregate
value by calling aggregator_clear() was also adding the current
value to the aggregate value by calling aggregator_add().
Fixed by making no_rows_in_result() to call aggregator_clear()
directly.
Renamed Item_sum::reset to Item_sum::reset_and_add() to
and added a comment to avoid misinterpretation of what the
function does.
mysql-test/r/func_group_innodb.result:
New BitKeeper file ``mysql-test/r/func_group_innodb.result''
mysql-test/t/func_group_innodb.test:
New BitKeeper file ``mysql-test/t/func_group_innodb.test''