summaryrefslogtreecommitdiff
path: root/sql/sql_select.cc
diff options
context:
space:
mode:
authorSergey Petrunya <psergey@askmonty.org>2010-08-09 23:01:40 +0400
committerSergey Petrunya <psergey@askmonty.org>2010-08-09 23:01:40 +0400
commit0276757dbc635ed8dc54133827d3656061c29343 (patch)
tree1b8d665cb6f5e5fce4861b0c19cbe4c7449c72e7 /sql/sql_select.cc
parenta81f75150e882efd45c50f32c289e49902e6a7fb (diff)
parent57c17e18af47c7cd200a604410f6389d0ad01d52 (diff)
downloadmariadb-git-0276757dbc635ed8dc54133827d3656061c29343.tar.gz
DS-MRR support for clustered primary keys and key-ordered retrieval: merge with 5.3
Diffstat (limited to 'sql/sql_select.cc')
-rw-r--r--sql/sql_select.cc3
1 files changed, 2 insertions, 1 deletions
diff --git a/sql/sql_select.cc b/sql/sql_select.cc
index 2638daf4e5c..7e9e880a37a 100644
--- a/sql/sql_select.cc
+++ b/sql/sql_select.cc
@@ -7508,10 +7508,11 @@ uint check_join_cache_usage(JOIN_TAB *tab,
case JT_EQ_REF:
if (cache_level <= 4)
return 0;
- flags= HA_MRR_NO_NULL_ENDPOINTS;
+ flags= HA_MRR_NO_NULL_ENDPOINTS | HA_MRR_SINGLE_POINT;
if (tab->table->covering_keys.is_set(tab->ref.key))
flags|= HA_MRR_INDEX_ONLY;
rows= tab->table->file->multi_range_read_info(tab->ref.key, 10, 20,
+ tab->ref.key_parts,
&bufsz, &flags, &cost);
if ((rows != HA_POS_ERROR) && !(flags & HA_MRR_USE_DEFAULT_IMPL) &&
(!(flags & HA_MRR_NO_ASSOCIATION) || cache_level > 6) &&