summaryrefslogtreecommitdiff
path: root/mysql-test/r/odbc.result
diff options
context:
space:
mode:
authorAlexey Botchkov <holyfoot@mysql.com>2009-11-03 17:54:41 +0400
committerAlexey Botchkov <holyfoot@mysql.com>2009-11-03 17:54:41 +0400
commitd9ea0d0cd5030da40b791a75269cc4dbc4e0d8fe (patch)
treef08d046d55a73412d040b0fa93efb1e474adb19e /mysql-test/r/odbc.result
parent5c4423c5af8e614f29061cd0f7bb79bfb0bfa7fc (diff)
downloadmariadb-git-d9ea0d0cd5030da40b791a75269cc4dbc4e0d8fe.tar.gz
Bug#41371 Select returns 1 row with condition "col is not null and col is null"
For application compatibility reasons MySQL converts "<autoincrement_column> IS NULL" predicates to "<autoincrement_column> = LAST_INSERT_ID()" in the first SELECT following an INSERT regardless of whether they're top level predicates or not. This causes wrong and obscure results when these predicates are combined with others on the same columns. Fixed by only doing the transformation on a single top-level predicate if a special SQL mode is turned on (sql_auto_is_null). Also made sql_auto_is_null off by default. per-file comments: mysql-test/r/func_isnull.result Bug#41371 Select returns 1 row with condition "col is not null and col is null" test result updated mysql-test/t/func_isnull.test Bug#41371 Select returns 1 row with condition "col is not null and col is null" test case added sql/mysqld.cc Bug#41371 Select returns 1 row with condition "col is not null and col is null" sql_auto_is_null now is OFF by default. sql/sql_select.cc Bug#41371 Select returns 1 row with condition "col is not null and col is null" remove_eq_conds() split in two parts - one only checks the upper condition, the req_remove_eq_conds() recursively checks all the condition tree. mysql-test/extra/rpl_tests/rpl_insert_id.test Bug#41371 Select returns 1 row with condition "col is not null and col is null" test fixed (set the sql_auto_is_null variable) mysql-test/r/mysqlbinlog.result Bug#41371 Select returns 1 row with condition "col is not null and col is null" result updated mysql-test/r/mysqlbinlog2.result Bug#41371 Select returns 1 row with condition "col is not null and col is null" result updated mysql-test/r/odbc.result Bug#41371 Select returns 1 row with condition "col is not null and col is null" result updated mysql-test/r/query_cache.result Bug#41371 Select returns 1 row with condition "col is not null and col is null" result updated mysql-test/r/user_var-binlog.result Bug#41371 Select returns 1 row with condition "col is not null and col is null" result updated mysql-test/suite/binlog/r/binlog_row_ctype_ucs.result Bug#41371 Select returns 1 row with condition "col is not null and col is null" result updated mysql-test/suite/binlog/r/binlog_stm_ctype_ucs.result Bug#41371 Select returns 1 row with condition "col is not null and col is null" result updated mysql-test/suite/rpl/r/rpl_insert_id.result Bug#41371 Select returns 1 row with condition "col is not null and col is null" result updated mysql-test/suite/rpl/r/rpl_row_mysqlbinlog.result Bug#41371 Select returns 1 row with condition "col is not null and col is null" result updated mysql-test/suite/rpl/r/rpl_sp.result Bug#41371 Select returns 1 row with condition "col is not null and col is null" result updated mysql-test/t/odbc.test Bug#41371 Select returns 1 row with condition "col is not null and col is null" test fixed (set the sql_auto_is_null variable)
Diffstat (limited to 'mysql-test/r/odbc.result')
-rw-r--r--mysql-test/r/odbc.result4
1 files changed, 3 insertions, 1 deletions
diff --git a/mysql-test/r/odbc.result b/mysql-test/r/odbc.result
index 5629d3dab33..3dbac12ca7c 100644
--- a/mysql-test/r/odbc.result
+++ b/mysql-test/r/odbc.result
@@ -1,4 +1,5 @@
drop table if exists t1;
+set @@session.sql_auto_is_null=1;
select {fn length("hello")}, { date "1997-10-20" };
{fn length("hello")} 1997-10-20
5 1997-10-20
@@ -7,9 +8,9 @@ insert into t1 SET A=NULL,B=1;
insert into t1 SET a=null,b=2;
select * from t1 where a is null and b=2;
a b
-2 2
select * from t1 where a is null;
a b
+2 2
explain select * from t1 where b is null;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Impossible WHERE
@@ -25,3 +26,4 @@ SELECT sql_no_cache a, last_insert_id() FROM t1;
a last_insert_id()
1 1
DROP TABLE t1;
+set @@session.sql_auto_is_null=default;