summaryrefslogtreecommitdiff
path: root/sql/opt_range.cc
diff options
context:
space:
mode:
authorunknown <jimw@mysql.com>2006-01-06 10:42:58 -0800
committerunknown <jimw@mysql.com>2006-01-06 10:42:58 -0800
commit91881b44c347e173d5d49aa9e5351a42267ed0a2 (patch)
tree8924a87e95e1f01b8788892513110b379c98c991 /sql/opt_range.cc
parent3c4c332fd0ce4f6ec06a1f3b0c98a25cac80a2f4 (diff)
parentbf1ebe98dfe51c7f7b13e783cd13d8362a26afbf (diff)
downloadmariadb-git-91881b44c347e173d5d49aa9e5351a42267ed0a2.tar.gz
Merge mysql.com:/home/jimw/my/mysql-5.0-clean
into mysql.com:/home/jimw/my/mysql-5.1-clean include/config-win.h: Auto merged mysql-test/r/bdb.result: Auto merged mysql-test/r/create.result: Auto merged mysql-test/r/view.result: Auto merged mysql-test/t/bdb.test: Auto merged mysql-test/t/create.test: Auto merged mysql-test/t/disabled.def: Auto merged mysql-test/t/view.test: Auto merged sql/ha_federated.cc: Auto merged sql/handler.cc: Auto merged sql/item.cc: Auto merged sql/item.h: Auto merged sql/mysqld.cc: Auto merged sql/opt_range.cc: Auto merged sql/parse_file.cc: Auto merged sql/sp.cc: Auto merged sql/sp_head.cc: Auto merged sql/sp_head.h: Auto merged sql/sql_acl.cc: Auto merged sql/sql_base.cc: Auto merged sql/sql_handler.cc: Auto merged sql/sql_insert.cc: Auto merged sql/sql_parse.cc: Auto merged sql/sql_select.cc: Auto merged sql/sql_trigger.cc: Auto merged sql/field.cc: Resolve conflict sql/ha_ndbcluster.cc: Resolve conflict sql/log_event.cc: Resolve conflict
Diffstat (limited to 'sql/opt_range.cc')
-rw-r--r--sql/opt_range.cc14
1 files changed, 9 insertions, 5 deletions
diff --git a/sql/opt_range.cc b/sql/opt_range.cc
index f090fac2ecf..7dd694f3411 100644
--- a/sql/opt_range.cc
+++ b/sql/opt_range.cc
@@ -6955,6 +6955,7 @@ bool QUICK_ROR_UNION_SELECT::check_if_keys_used(List<Item> *fields)
/*
Create quick select from ref/ref_or_null scan.
+
SYNOPSIS
get_quick_select_for_ref()
thd Thread handle
@@ -6974,15 +6975,18 @@ bool QUICK_ROR_UNION_SELECT::check_if_keys_used(List<Item> *fields)
QUICK_RANGE_SELECT *get_quick_select_for_ref(THD *thd, TABLE *table,
TABLE_REF *ref, ha_rows records)
{
- MEM_ROOT *old_root= thd->mem_root;
- /* The following call may change thd->mem_root */
- QUICK_RANGE_SELECT *quick= new QUICK_RANGE_SELECT(thd, table, ref->key, 0);
- /* save mem_root set by QUICK_RANGE_SELECT constructor */
- MEM_ROOT *alloc= thd->mem_root;
+ MEM_ROOT *old_root, *alloc;
+ QUICK_RANGE_SELECT *quick;
KEY *key_info = &table->key_info[ref->key];
KEY_PART *key_part;
QUICK_RANGE *range;
uint part;
+
+ old_root= thd->mem_root;
+ /* The following call may change thd->mem_root */
+ quick= new QUICK_RANGE_SELECT(thd, table, ref->key, 0);
+ /* save mem_root set by QUICK_RANGE_SELECT constructor */
+ alloc= thd->mem_root;
/*
return back default mem_root (thd->mem_root) changed by
QUICK_RANGE_SELECT constructor