diff options
author | unknown <gkodinov/kgeorge@magare.gmz> | 2007-10-24 11:50:09 +0300 |
---|---|---|
committer | unknown <gkodinov/kgeorge@magare.gmz> | 2007-10-24 11:50:09 +0300 |
commit | ee8ab6d9e6ac44c670b92cfb095abedf42fa0dab (patch) | |
tree | 4acc70703363e4a6f03dc72000fe43ee6428288f /sql/opt_sum.cc | |
parent | f78be6c8e997a2e5c5e971749d35ef4e44e425e2 (diff) | |
parent | e66f7e1d3684c49a97bed7aefb616181b696a2f8 (diff) | |
download | mariadb-git-ee8ab6d9e6ac44c670b92cfb095abedf42fa0dab.tar.gz |
Merge magare.gmz:/home/kgeorge/mysql/work/B30715-merged-5.0-opt
into magare.gmz:/home/kgeorge/mysql/work/B30715-merged-5.1-opt
mysql-test/r/func_group.result:
Auto merged
mysql-test/r/type_decimal.result:
Auto merged
mysql-test/t/func_group.test:
Auto merged
mysql-test/t/type_decimal.test:
Auto merged
sql/item.cc:
Auto merged
sql/opt_sum.cc:
merge bug 30715 to 5.1-opt
Diffstat (limited to 'sql/opt_sum.cc')
-rw-r--r-- | sql/opt_sum.cc | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/sql/opt_sum.cc b/sql/opt_sum.cc index 6836c53db4e..12ad504d738 100644 --- a/sql/opt_sum.cc +++ b/sql/opt_sum.cc @@ -295,14 +295,15 @@ int opt_sum_query(TABLE_LIST *tables, List<Item> &all_fields,COND *conds) Check if case 1 from above holds. If it does, we should read the skipped tuple. */ - if (ref.key_buff[prefix_len] == 1 && - /* + if (item_field->field->real_maybe_null() && + ref.key_buff[prefix_len] == 1 && + /* Last keypart (i.e. the argument to MIN) is set to NULL by find_key_for_maxmin only if all other keyparts are bound to constants in a conjunction of equalities. Hence, we can detect this by checking only if the last keypart is NULL. - */ + */ (error == HA_ERR_KEY_NOT_FOUND || key_cmp_if_same(table, ref.key_buff, ref.key, prefix_len))) { |