summaryrefslogtreecommitdiff
path: root/sql/item_subselect.cc
diff options
context:
space:
mode:
authorigor@olga.mysql.com <>2007-05-12 10:54:23 -0700
committerigor@olga.mysql.com <>2007-05-12 10:54:23 -0700
commit82239b3e9c3ccef18cda3531c3e29dc94c92673f (patch)
treedae2b20962e2b9f5326b2d11adc18ffff0fb7656 /sql/item_subselect.cc
parent5fbb3c156f5c88d112bf87a0d03e7ede9a603e79 (diff)
parent11d5f7ee1c4304425480ed803ef86a3abfe0c05a (diff)
downloadmariadb-git-82239b3e9c3ccef18cda3531c3e29dc94c92673f.tar.gz
Merge olga.mysql.com:/home/igor/mysql-5.0-opt
into olga.mysql.com:/home/igor/mysql-5.1-opt
Diffstat (limited to 'sql/item_subselect.cc')
-rw-r--r--sql/item_subselect.cc6
1 files changed, 4 insertions, 2 deletions
diff --git a/sql/item_subselect.cc b/sql/item_subselect.cc
index 8f6503810fc..ab4b4eb6796 100644
--- a/sql/item_subselect.cc
+++ b/sql/item_subselect.cc
@@ -1872,6 +1872,8 @@ int subselect_single_select_engine::exec()
if (cond_guard && !*cond_guard)
{
/* Change the access method to full table scan */
+ tab->save_read_first_record= tab->read_first_record;
+ tab->save_read_record= tab->read_record.read_record;
tab->read_first_record= init_read_record_seq;
tab->read_record.record= tab->table->record[0];
tab->read_record.thd= join->thd;
@@ -1892,8 +1894,8 @@ int subselect_single_select_engine::exec()
JOIN_TAB *tab= *ptab;
tab->read_record.record= 0;
tab->read_record.ref_length= 0;
- tab->read_first_record= join_read_always_key_or_null;
- tab->read_record.read_record= join_read_next_same_or_null;
+ tab->read_first_record= tab->save_read_first_record;
+ tab->read_record.read_record= tab->save_read_record;
}
executed= 1;
thd->where= save_where;