diff options
author | unknown <timour@mysql.com> | 2005-02-23 16:03:58 +0200 |
---|---|---|
committer | unknown <timour@mysql.com> | 2005-02-23 16:03:58 +0200 |
commit | a86dd5b707f1ef2c7fa9a038937daedbb6f95397 (patch) | |
tree | 310d314fa28ac87dbd1af65a2e6517f03d8f500c | |
parent | e6944e4d32040d41474a7badc132ae0e7f50c7d2 (diff) | |
parent | 9c7879c281e9c9ae93fecc0f801fc6199ed48c1a (diff) | |
download | mariadb-git-a86dd5b707f1ef2c7fa9a038937daedbb6f95397.tar.gz |
Merge mysql.com:/home/timka/mysql/src/5.0-virgin
into mysql.com:/home/timka/mysql/src/5.0-bug-8576
-rw-r--r-- | sql/opt_range.cc | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/sql/opt_range.cc b/sql/opt_range.cc index 66d9da10334..0418225965a 100644 --- a/sql/opt_range.cc +++ b/sql/opt_range.cc @@ -7030,8 +7030,12 @@ get_best_group_min_max(PARAM *param, SEL_TREE *tree) cur_group_key_parts, tree, cur_index_tree, cur_quick_prefix_records, have_min, have_max, &cur_read_cost, &cur_records); - - if (cur_read_cost < best_read_cost) + /* + If cur_read_cost is lower than best_read_cost use cur_index. + Do not compare doubles directly because they may have different + representations (64 vs. 80 bits). + */ + if (cur_read_cost < best_read_cost - (DBL_EPSILON * cur_read_cost)) { index_info= cur_index_info; index= cur_index; |