mirror of
https://github.com/MariaDB/server.git
synced 2025-01-16 12:02:42 +01:00
Auto-merge from mysql-trunk-merge.
This commit is contained in:
commit
9e3caef632
4 changed files with 32 additions and 3 deletions
|
@ -4775,4 +4775,19 @@ c1
|
|||
9.1234
|
||||
DROP TABLE t1;
|
||||
# End of test for bug#49489.
|
||||
#
|
||||
# Bug #49517: Inconsistent behavior while using
|
||||
# NULLable BIGINT and INT columns in comparison
|
||||
#
|
||||
CREATE TABLE t1(a BIGINT UNSIGNED NOT NULL, b BIGINT NULL, c INT NULL);
|
||||
INSERT INTO t1 VALUES(105, NULL, NULL);
|
||||
SELECT * FROM t1 WHERE b < 102;
|
||||
a b c
|
||||
SELECT * FROM t1 WHERE c < 102;
|
||||
a b c
|
||||
SELECT * FROM t1 WHERE 102 < b;
|
||||
a b c
|
||||
SELECT * FROM t1 WHERE 102 < c;
|
||||
a b c
|
||||
DROP TABLE t1;
|
||||
End of 5.1 tests
|
||||
|
|
|
@ -4061,4 +4061,18 @@ SELECT * FROM t1 WHERE c1 < 9.12345;
|
|||
DROP TABLE t1;
|
||||
--echo # End of test for bug#49489.
|
||||
|
||||
|
||||
--echo #
|
||||
--echo # Bug #49517: Inconsistent behavior while using
|
||||
--echo # NULLable BIGINT and INT columns in comparison
|
||||
--echo #
|
||||
CREATE TABLE t1(a BIGINT UNSIGNED NOT NULL, b BIGINT NULL, c INT NULL);
|
||||
INSERT INTO t1 VALUES(105, NULL, NULL);
|
||||
SELECT * FROM t1 WHERE b < 102;
|
||||
SELECT * FROM t1 WHERE c < 102;
|
||||
SELECT * FROM t1 WHERE 102 < b;
|
||||
SELECT * FROM t1 WHERE 102 < c;
|
||||
DROP TABLE t1;
|
||||
|
||||
|
||||
--echo End of 5.1 tests
|
||||
|
|
|
@ -896,9 +896,9 @@ int Arg_comparator::set_cmp_func(Item_result_field *owner_arg,
|
|||
ulonglong const_value= (ulonglong)-1;
|
||||
thd= current_thd;
|
||||
owner= owner_arg;
|
||||
set_null= set_null && owner_arg;
|
||||
a= a1;
|
||||
b= a2;
|
||||
owner= owner_arg;
|
||||
thd= current_thd;
|
||||
|
||||
if ((cmp_type= can_compare_as_dates(*a, *b, &const_value)))
|
||||
|
|
|
@ -57,10 +57,10 @@ public:
|
|||
/* Allow owner function to use string buffers. */
|
||||
String value1, value2;
|
||||
|
||||
Arg_comparator(): thd(0), a_cache(0), b_cache(0), set_null(0),
|
||||
Arg_comparator(): thd(0), a_cache(0), b_cache(0), set_null(TRUE),
|
||||
get_value_a_func(0), get_value_b_func(0) {};
|
||||
Arg_comparator(Item **a1, Item **a2): a(a1), b(a2), thd(0),
|
||||
a_cache(0), b_cache(0), set_null(0),
|
||||
a_cache(0), b_cache(0), set_null(TRUE),
|
||||
get_value_a_func(0), get_value_b_func(0) {};
|
||||
|
||||
int set_compare_func(Item_result_field *owner, Item_result type);
|
||||
|
|
Loading…
Reference in a new issue