diff options
author | holyfoot/hf@mysql.com/hfmain.(none) <> | 2007-07-31 11:00:19 +0500 |
---|---|---|
committer | holyfoot/hf@mysql.com/hfmain.(none) <> | 2007-07-31 11:00:19 +0500 |
commit | 288ab1aa4136ea5bd7957987e2849b969efe9b84 (patch) | |
tree | 031ef9120c51a8fe759f41f8e337d8a990bf116a /sql/sql_select.cc | |
parent | 57a564673b7d3755bc170e69d28b50d145043066 (diff) | |
parent | f1ee2d0687e195e90a46bbd367db7b02387ecdd3 (diff) | |
download | mariadb-git-288ab1aa4136ea5bd7957987e2849b969efe9b84.tar.gz |
Merge mysql.com:/home/hf/work/029717/my41-29717
into mysql.com:/home/hf/work/29717/my41-29717
Diffstat (limited to 'sql/sql_select.cc')
-rw-r--r-- | sql/sql_select.cc | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/sql/sql_select.cc b/sql/sql_select.cc index afbffc499ad..61690f09980 100644 --- a/sql/sql_select.cc +++ b/sql/sql_select.cc @@ -777,6 +777,7 @@ JOIN::optimize() order=0; // The output has only one row simple_order=1; select_distinct= 0; // No need in distinct for 1 row + group_optimized_away= 1; } calc_group_buffer(this, group_list); @@ -6896,7 +6897,8 @@ end_send_group(JOIN *join, JOIN_TAB *join_tab __attribute__((unused)), if (!join->first_record || end_of_records || (idx=test_if_group_changed(join->group_fields)) >= 0) { - if (join->first_record || (end_of_records && !join->group)) + if (join->first_record || + (end_of_records && !join->group && !join->group_optimized_away)) { if (join->procedure) join->procedure->end_group(); |