summaryrefslogtreecommitdiff
path: root/sql/item_subselect.cc
diff options
context:
space:
mode:
authorunknown <monty@mysql.com/narttu.mysql.fi>2007-02-21 19:38:40 +0200
committerunknown <monty@mysql.com/narttu.mysql.fi>2007-02-21 19:38:40 +0200
commite5706080f08eea5a5e67f85778307fd2cc021861 (patch)
tree3be2ddec9867a7253e617d92f8fa85f72d57e6d3 /sql/item_subselect.cc
parent1384e640053aee1f528148e876a632b2a0a2a8ed (diff)
downloadmariadb-git-e5706080f08eea5a5e67f85778307fd2cc021861.tar.gz
After merge fixes
This also fixes a bug in counting number of rows that are updated when we have many simultanous queries extra/yassl/src/ssl.cpp: Removed compiler warning extra/yassl/taocrypt/src/asn.cpp: After merge fixes extra/yassl/testsuite/testsuite.cpp: Removed compiler warning mysql-test/r/ndb_lock.result: After merge fixes ndb/src/common/debugger/EventLogger.cpp: Removed compiler warning ndb/src/common/util/ConfigValues.cpp: Removed compiler warning ndb/src/common/util/NdbSqlUtil.cpp: Removed compiler warning ndb/src/kernel/blocks/dbtc/DbtcMain.cpp: Removed compiler warning ndb/src/kernel/blocks/dbtup/DbtupIndex.cpp: Removed compiler warning ndb/src/kernel/blocks/dbtup/DbtupSystemRestart.cpp: Removed compiler warning ndb/src/kernel/vm/ndbd_malloc.cpp: Removed compiler warning ndb/src/mgmclient/main.cpp: Removed compiler warning ndb/src/ndbapi/SignalSender.cpp: Removed compiler warning sql/ha_ndbcluster.cc: Some extra safety sql/item_cmpfunc.cc: After merge fixes sql/item_subselect.cc: After merge fixes sql/sql_insert.cc: After merge fixes (This actually fixes a bug in old code when many connections are in use) support-files/compiler_warnings.supp: Removed some suppressed warnings
Diffstat (limited to 'sql/item_subselect.cc')
-rw-r--r--sql/item_subselect.cc9
1 files changed, 4 insertions, 5 deletions
diff --git a/sql/item_subselect.cc b/sql/item_subselect.cc
index cb6e8146adc..20d9ed8affa 100644
--- a/sql/item_subselect.cc
+++ b/sql/item_subselect.cc
@@ -1164,7 +1164,7 @@ Item_in_subselect::row_value_transformer(JOIN *join)
optimizer->keep_top_level_cache();
thd->lex->current_select= current;
- unit->uncacheable|= UNCACHEABLE_DEPENDENT;
+ master_unit->uncacheable|= UNCACHEABLE_DEPENDENT;
if (!abort_on_null && left_expr->maybe_null && !pushed_cond_guards)
{
@@ -1220,7 +1220,7 @@ Item_in_subselect::row_value_transformer(JOIN *join)
(char *)"<list ref>")
);
Item *col_item= new Item_cond_or(item_eq, item_isnull);
- if (!abort_on_null && left_expr->el(i)->maybe_null)
+ if (!abort_on_null && left_expr->element_index(i)->maybe_null)
{
if (!(col_item= new Item_func_trig_cond(col_item, get_cond_guard(i))))
DBUG_RETURN(RES_ERROR);
@@ -1234,7 +1234,7 @@ Item_in_subselect::row_value_transformer(JOIN *join)
ref_pointer_array + i,
(char *)"<no matter>",
(char *)"<list ref>"));
- if (!abort_on_null && left_expr->el(i)->maybe_null)
+ if (!abort_on_null && left_expr->element_index(i)->maybe_null)
{
if (!(item_nnull_test=
new Item_func_trig_cond(item_nnull_test, get_cond_guard(i))))
@@ -1311,7 +1311,7 @@ Item_in_subselect::row_value_transformer(JOIN *join)
TODO: why we create the above for cases where the right part
cant be NULL?
*/
- if (left_expr->el(i)->maybe_null)
+ if (left_expr->element_index(i)->maybe_null)
{
if (!(item= new Item_func_trig_cond(item, get_cond_guard(i))))
DBUG_RETURN(RES_ERROR);
@@ -1762,7 +1762,6 @@ int subselect_single_select_engine::exec()
if (!executed)
{
item->reset_value_registration();
- bool have_changed_access= FALSE;
JOIN_TAB *changed_tabs[MAX_TABLES];
JOIN_TAB **last_changed_tab= changed_tabs;
if (item->have_guarded_conds())