diff options
author | unknown <monty@mysql.com> | 2005-02-10 02:27:37 +0200 |
---|---|---|
committer | unknown <monty@mysql.com> | 2005-02-10 02:27:37 +0200 |
commit | 9f04f9d0352e404cf64e044d1c22873595f276d2 (patch) | |
tree | 5b603904b731e515c447d53d7843855bfbbe2f8c /sql/item_subselect.cc | |
parent | 70d3ac05d97f7721e564a718ba79afd5eb7eb2cb (diff) | |
parent | 0fe1b28b750c12dd500e507f1b688887c9aca227 (diff) | |
download | mariadb-git-9f04f9d0352e404cf64e044d1c22873595f276d2.tar.gz |
Merge with 4.1
BitKeeper/etc/ignore:
auto-union
client/mysqltest.c:
Auto merged
extra/my_print_defaults.c:
Auto merged
extra/perror.c:
Auto merged
extra/resolve_stack_dump.c:
Auto merged
include/help_end.h:
Auto merged
include/help_start.h:
Auto merged
myisam/myisamlog.c:
Auto merged
mysql-test/r/group_by.result:
Auto merged
mysql-test/r/heap_hash.result:
Auto merged
BitKeeper/deleted/.del-pack_isam.c~43801f0df7504834:
Auto merged
mysql-test/r/subselect.result:
Auto merged
mysql-test/r/user_var.result:
Auto merged
mysql-test/t/subselect.test:
Auto merged
ndb/src/kernel/vm/FastScheduler.cpp:
Auto merged
netware/mysql_test_run.c:
Auto merged
sql/item.cc:
Auto merged
sql/item.h:
Auto merged
sql/mysqld.cc:
Auto merged
sql/sql_list.h:
Auto merged
sql/sql_select.cc:
Auto merged
netware/BUILD/nwbootstrap:
merge: keep local
scripts/make_binary_distribution.sh:
merge: keep local
sql/ha_heap.cc:
Trivial merge
sql/ha_innodb.cc:
Auto merge (Code already existed in 5.0)
sql/item_cmpfunc.cc:
Simple merge
sql/item_func.cc:
Simple merge
sql/item_row.cc:
Simple merge
sql/item_strfunc.cc:
Simple merge
sql/item_subselect.cc:
Merge with sanjas optimzation patch, but keep old code withing ifdef as a reference until this is fixed
Diffstat (limited to 'sql/item_subselect.cc')
-rw-r--r-- | sql/item_subselect.cc | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/sql/item_subselect.cc b/sql/item_subselect.cc index 8d392232f02..fe849bd213a 100644 --- a/sql/item_subselect.cc +++ b/sql/item_subselect.cc @@ -889,8 +889,10 @@ Item_in_subselect::single_value_transformer(JOIN *join, ref_pointer_array, (char *)"<ref>", this->full_name())); +#ifdef CORRECT_BUT_TOO_SLOW_TO_BE_USABLE if (!abort_on_null && left_expr->maybe_null) item= new Item_cond_or(new Item_func_isnull(left_expr), item); +#endif /* AND and comparison functions can't be changed during fix_fields() we can assign select_lex->having here, and pass 0 as last @@ -944,8 +946,10 @@ Item_in_subselect::single_value_transformer(JOIN *join, goto err; item= new Item_cond_or(item, new Item_func_isnull(orig_item)); +#ifdef CORRECT_BUT_TOO_SLOW_TO_BE_USABLE if (left_expr->maybe_null) item= new Item_cond_or(new Item_func_isnull(left_expr), item); +#endif } item->name= (char *)in_additional_cond; /* @@ -975,8 +979,10 @@ Item_in_subselect::single_value_transformer(JOIN *join, new Item_null_helper(this, item, (char *)"<no matter>", (char *)"<result>")); +#ifdef CORRECT_BUT_TOO_SLOW_TO_BE_USABLE if (!abort_on_null && left_expr->maybe_null) item= new Item_cond_or(new Item_func_isnull(left_expr), item); +#endif select_lex->having= join->having= item; select_lex->having_fix_field= 1; /* |