summaryrefslogtreecommitdiff
path: root/mysql-test/r
diff options
context:
space:
mode:
authorRamil Kalimullin <ramil@mysql.com>2008-09-09 20:05:27 +0500
committerRamil Kalimullin <ramil@mysql.com>2008-09-09 20:05:27 +0500
commit776793a97c97c4e2b2c7a6a2870696c147eb235c (patch)
tree644e2319ec4acc58e9fd5037dd7a176fef6ff9dd /mysql-test/r
parent788be2aebdb0bce63b45b1fecf2f2d8a12a5cfc7 (diff)
downloadmariadb-git-776793a97c97c4e2b2c7a6a2870696c147eb235c.tar.gz
Fix for bug#37526: asymertic operator <=> in trigger
Problem: <=> operator may return wrong results comparing NULL and a DATE/DATETIME/TIME value. Fix: properly check NULLs. mysql-test/r/type_datetime.result: Fix for bug#37526: asymertic operator <=> in trigger - test result. mysql-test/t/type_datetime.test: Fix for bug#37526: asymertic operator <=> in trigger - test case. sql/item_cmpfunc.cc: Fix for bug#37526: asymertic operator <=> in trigger - if is_nulls_eq is TRUE Arg_comparator::compare_datetime() should return 1 only if both arguments are NULL.
Diffstat (limited to 'mysql-test/r')
-rw-r--r--mysql-test/r/type_datetime.result23
1 files changed, 23 insertions, 0 deletions
diff --git a/mysql-test/r/type_datetime.result b/mysql-test/r/type_datetime.result
index 3814e2f8348..9c358c41215 100644
--- a/mysql-test/r/type_datetime.result
+++ b/mysql-test/r/type_datetime.result
@@ -560,4 +560,27 @@ select * from t2
where id in (select id from t2 as x1 where (t2.cur_date is null));
id cur_date
drop table t1,t2;
+SELECT
+CAST('NULL' AS DATE) <=> CAST('2008-01-01' AS DATE) n1,
+CAST('2008-01-01' AS DATE) <=> CAST('NULL' AS DATE) n2,
+CAST('NULL' AS DATE) <=> CAST('NULL' AS DATE) n3,
+CAST('NULL' AS DATE) <> CAST('2008-01-01' AS DATE) n4,
+CAST('2008-01-01' AS DATE) <> CAST('NULL' AS DATE) n5,
+CAST('NULL' AS DATE) <> CAST('NULL' AS DATE) n6,
+CAST('NULL' AS DATE) < CAST('2008-01-01' AS DATE) n7,
+CAST('2008-01-01' AS DATE) < CAST('NULL' AS DATE) n8,
+CAST('NULL' AS DATE) < CAST('NULL' AS DATE) n9;
+n1 n2 n3 n4 n5 n6 n7 n8 n9
+0 0 1 NULL NULL NULL NULL NULL NULL
+Warnings:
+Warning 1292 Truncated incorrect datetime value: 'NULL'
+Warning 1292 Truncated incorrect datetime value: 'NULL'
+Warning 1292 Truncated incorrect datetime value: 'NULL'
+Warning 1292 Truncated incorrect datetime value: 'NULL'
+Warning 1292 Truncated incorrect datetime value: 'NULL'
+Warning 1292 Truncated incorrect datetime value: 'NULL'
+Warning 1292 Truncated incorrect datetime value: 'NULL'
+Warning 1292 Truncated incorrect datetime value: 'NULL'
+Warning 1292 Truncated incorrect datetime value: 'NULL'
+Warning 1292 Truncated incorrect datetime value: 'NULL'
End of 5.0 tests