mirror of
https://github.com/MariaDB/server.git
synced 2025-08-08 11:22:35 +03:00
MDEV-369 (Mismatches in MySQL engines test suite)
Following reasons caused mismatches: - different handling of invalid values; - different CAST results with fractional seconds; - microseconds support in MariaDB; - different algorithm of comparing temporal values; - differences in error and warning texts and codes; - different approach to truncating datetime values to time; - additional collations; - different record order for queries without ORDER BY; - MySQL bug#66034. More details in MDEV-369 comments.
This commit is contained in:
@@ -40,12 +40,12 @@ INSERT INTO t4 VALUES('10.22.22','10.22.22','2009-01-26'),(1234567,1234567,'2009
|
||||
Warnings:
|
||||
Warning 1265 Data truncated for column 'c1' at row 1
|
||||
Warning 1265 Data truncated for column 'c2' at row 1
|
||||
Warning 1264 Out of range value for column 'c1' at row 2
|
||||
Warning 1264 Out of range value for column 'c2' at row 2
|
||||
Warning 1264 Out of range value for column 'c1' at row 3
|
||||
Warning 1264 Out of range value for column 'c2' at row 3
|
||||
Warning 1264 Out of range value for column 'c1' at row 4
|
||||
Warning 1264 Out of range value for column 'c2' at row 4
|
||||
Warning 1265 Data truncated for column 'c1' at row 2
|
||||
Warning 1265 Data truncated for column 'c2' at row 2
|
||||
Warning 1265 Data truncated for column 'c1' at row 3
|
||||
Warning 1265 Data truncated for column 'c2' at row 3
|
||||
Warning 1265 Data truncated for column 'c1' at row 4
|
||||
Warning 1265 Data truncated for column 'c2' at row 4
|
||||
Warning 1265 Data truncated for column 'c1' at row 6
|
||||
Warning 1265 Data truncated for column 'c2' at row 6
|
||||
INSERT INTO t1 VALUES('8:29:45',NULL,'2009-02-01');
|
||||
@@ -135,6 +135,8 @@ c1 c2 c3
|
||||
-838:59:59 -838:59:59 2009-01-08
|
||||
00:00:00 00:00:00 2009-01-09
|
||||
00:00:00 00:00:00 2009-01-27
|
||||
00:00:00 00:00:00 2009-01-28
|
||||
00:00:00 00:00:00 2009-01-29
|
||||
00:00:10 00:00:10 2009-01-26
|
||||
00:00:11 00:00:11 2009-01-20
|
||||
00:00:12 00:00:12 2009-01-13
|
||||
@@ -160,8 +162,6 @@ c1 c2 c3
|
||||
491:22:33 491:22:33 2009-01-04
|
||||
825:23:00 825:23:00 2009-01-05
|
||||
838:59:59 838:59:59 2009-01-10
|
||||
838:59:59 838:59:59 2009-01-28
|
||||
838:59:59 838:59:59 2009-01-29
|
||||
SELECT * FROM t1;
|
||||
c1 c2 c3
|
||||
-838:59:59 -838:59:59 2009-01-21
|
||||
@@ -1650,8 +1650,10 @@ SELECT * FROM t1 WHERE c2 BETWEEN NULL AND '10:22:33' ORDER BY c2 LIMIT 2;
|
||||
c1 c2 c3
|
||||
SELECT * FROM t1 WHERE c2 IN (NULL,'10:22:33') ORDER BY c2;
|
||||
c1 c2 c3
|
||||
10:22:33 10:22:33 2009-01-02
|
||||
SELECT * FROM t1 WHERE c2 IN (NULL,'10:22:33') ORDER BY c2 LIMIT 2;
|
||||
c1 c2 c3
|
||||
10:22:33 10:22:33 2009-01-02
|
||||
SELECT * FROM t1 WHERE c2 >= NULL AND c2 < '10:22:33' AND c1 = '491:22:33' ORDER BY c2;
|
||||
c1 c2 c3
|
||||
SELECT * FROM t1 WHERE c2 >= NULL AND c2 < '10:22:33' AND c1 = '491:22:33' ORDER BY c2 LIMIT 2;
|
||||
@@ -1723,8 +1725,10 @@ SELECT * FROM t1 WHERE c2 BETWEEN NULL AND '10:22:33' ORDER BY c2 DESC LIMIT 2;
|
||||
c1 c2 c3
|
||||
SELECT * FROM t1 WHERE c2 IN (NULL,'10:22:33') ORDER BY c2 DESC;
|
||||
c1 c2 c3
|
||||
10:22:33 10:22:33 2009-01-02
|
||||
SELECT * FROM t1 WHERE c2 IN (NULL,'10:22:33') ORDER BY c2 DESC LIMIT 2;
|
||||
c1 c2 c3
|
||||
10:22:33 10:22:33 2009-01-02
|
||||
SELECT * FROM t1 WHERE c2 >= NULL AND c2 < '10:22:33' AND c1 = '491:22:33' ORDER BY c2 DESC;
|
||||
c1 c2 c3
|
||||
SELECT * FROM t1 WHERE c2 >= NULL AND c2 < '10:22:33' AND c1 = '491:22:33' ORDER BY c2 DESC LIMIT 2;
|
||||
@@ -3218,8 +3222,10 @@ SELECT * FROM t2 WHERE c2 BETWEEN NULL AND '10:22:33' ORDER BY c1,c2 LIMIT 2;
|
||||
c1 c2 c3
|
||||
SELECT * FROM t2 WHERE c2 IN (NULL,'10:22:33') ORDER BY c1,c2;
|
||||
c1 c2 c3
|
||||
10:22:33 10:22:33 2009-01-02
|
||||
SELECT * FROM t2 WHERE c2 IN (NULL,'10:22:33') ORDER BY c1,c2 LIMIT 2;
|
||||
c1 c2 c3
|
||||
10:22:33 10:22:33 2009-01-02
|
||||
SELECT * FROM t2 WHERE c2 >= NULL AND c2 < '10:22:33' AND c1 = '491:22:33' ORDER BY c1,c2;
|
||||
c1 c2 c3
|
||||
SELECT * FROM t2 WHERE c2 >= NULL AND c2 < '10:22:33' AND c1 = '491:22:33' ORDER BY c1,c2 LIMIT 2;
|
||||
@@ -3287,8 +3293,10 @@ SELECT * FROM t2 WHERE c2 BETWEEN NULL AND '10:22:33' ORDER BY c1,c2 DESC LIMIT
|
||||
c1 c2 c3
|
||||
SELECT * FROM t2 WHERE c2 IN (NULL,'10:22:33') ORDER BY c1,c2 DESC;
|
||||
c1 c2 c3
|
||||
10:22:33 10:22:33 2009-01-02
|
||||
SELECT * FROM t2 WHERE c2 IN (NULL,'10:22:33') ORDER BY c1,c2 DESC LIMIT 2;
|
||||
c1 c2 c3
|
||||
10:22:33 10:22:33 2009-01-02
|
||||
SELECT * FROM t2 WHERE c2 >= NULL AND c2 < '10:22:33' AND c1 = '491:22:33' ORDER BY c1,c2 DESC;
|
||||
c1 c2 c3
|
||||
SELECT * FROM t2 WHERE c2 >= NULL AND c2 < '10:22:33' AND c1 = '491:22:33' ORDER BY c1,c2 DESC LIMIT 2;
|
||||
@@ -4814,8 +4822,10 @@ SELECT * FROM t3 WHERE c2 BETWEEN NULL AND '10:22:33' ORDER BY c1,c2 LIMIT 2;
|
||||
c1 c2 c3
|
||||
SELECT * FROM t3 WHERE c2 IN (NULL,'10:22:33') ORDER BY c1,c2;
|
||||
c1 c2 c3
|
||||
10:22:33 10:22:33 2009-01-02
|
||||
SELECT * FROM t3 WHERE c2 IN (NULL,'10:22:33') ORDER BY c1,c2 LIMIT 2;
|
||||
c1 c2 c3
|
||||
10:22:33 10:22:33 2009-01-02
|
||||
SELECT * FROM t3 WHERE c2 >= NULL AND c2 < '10:22:33' AND c1 = '491:22:33' ORDER BY c1,c2;
|
||||
c1 c2 c3
|
||||
SELECT * FROM t3 WHERE c2 >= NULL AND c2 < '10:22:33' AND c1 = '491:22:33' ORDER BY c1,c2 LIMIT 2;
|
||||
@@ -4887,8 +4897,10 @@ SELECT * FROM t3 WHERE c2 BETWEEN NULL AND '10:22:33' ORDER BY c1,c2 DESC LIMIT
|
||||
c1 c2 c3
|
||||
SELECT * FROM t3 WHERE c2 IN (NULL,'10:22:33') ORDER BY c1,c2 DESC;
|
||||
c1 c2 c3
|
||||
10:22:33 10:22:33 2009-01-02
|
||||
SELECT * FROM t3 WHERE c2 IN (NULL,'10:22:33') ORDER BY c1,c2 DESC LIMIT 2;
|
||||
c1 c2 c3
|
||||
10:22:33 10:22:33 2009-01-02
|
||||
SELECT * FROM t3 WHERE c2 >= NULL AND c2 < '10:22:33' AND c1 = '491:22:33' ORDER BY c1,c2 DESC;
|
||||
c1 c2 c3
|
||||
SELECT * FROM t3 WHERE c2 >= NULL AND c2 < '10:22:33' AND c1 = '491:22:33' ORDER BY c1,c2 DESC LIMIT 2;
|
||||
@@ -5008,28 +5020,24 @@ c1 MIN(c2)
|
||||
838:59:59 838:59:59
|
||||
SELECT CAST(235959.123456 AS TIME);
|
||||
CAST(235959.123456 AS TIME)
|
||||
23:59:59.123456
|
||||
23:59:59
|
||||
SELECT CAST(0.235959123456e+6 AS TIME);
|
||||
CAST(0.235959123456e+6 AS TIME)
|
||||
23:59:59.123456
|
||||
23:59:59
|
||||
SELECT CAST(235959123456e-6 AS TIME);
|
||||
CAST(235959123456e-6 AS TIME)
|
||||
23:59:59.123456
|
||||
23:59:59
|
||||
SELECT CAST(235959.1234567 AS TIME);
|
||||
CAST(235959.1234567 AS TIME)
|
||||
23:59:59.123456
|
||||
Warnings:
|
||||
Warning 1292 Truncated incorrect time value: '235959.1234567'
|
||||
23:59:59
|
||||
SELECT CAST(0.2359591234567e6 AS TIME);
|
||||
CAST(0.2359591234567e6 AS TIME)
|
||||
23:59:59.123456
|
||||
Warnings:
|
||||
Warning 1292 Truncated incorrect time value: '235959.1234567'
|
||||
23:59:59
|
||||
SELECT CAST(0.2359591234567e+30 AS TIME);
|
||||
CAST(0.2359591234567e+30 AS TIME)
|
||||
NULL
|
||||
Warnings:
|
||||
Warning 1292 Truncated incorrect time value: '2.359591234567e+29'
|
||||
Warning 1292 Incorrect datetime value: '2.359591234567e+29'
|
||||
select cast('100:55:50' as time) < cast('24:00:00' as time);
|
||||
cast('100:55:50' as time) < cast('24:00:00' as time)
|
||||
0
|
||||
@@ -5077,7 +5085,6 @@ c1 c2 c3
|
||||
INSERT INTO t2(c1,c2) VALUES('12:34:56.78','12:34:56.78') ON DUPLICATE KEY UPDATE c1='12:34:56.79',c2='12:34:57.78';
|
||||
SELECT * FROM t2 WHERE c1='12:34:56.79' AND c2='12:34:57.78' /* 1 row */;
|
||||
c1 c2 c3
|
||||
12:34:56 12:34:57 2009-01-01
|
||||
SELECT * FROM t1 WHERE c1='10:22:35' AND c2='33 9:23' /* no rows */;
|
||||
c1 c2 c3
|
||||
INSERT INTO t1(c1,c2) VALUES('10:22:34','34 9:23') ON DUPLICATE KEY UPDATE c1='10:22:35',c2='33 9:23';
|
||||
@@ -5137,8 +5144,8 @@ c1 c2 c3
|
||||
09:36:00 09:36:00 2009-01-25
|
||||
00:00:10 00:00:10 2009-01-26
|
||||
00:00:00 00:00:00 2009-01-27
|
||||
838:59:59 838:59:59 2009-01-28
|
||||
838:59:59 838:59:59 2009-01-29
|
||||
00:00:00 00:00:00 2009-01-28
|
||||
00:00:00 00:00:00 2009-01-29
|
||||
262:22:00 262:22:00 2009-01-30
|
||||
00:00:12 00:00:12 2009-01-31
|
||||
08:29:45 NULL 2009-02-01
|
||||
@@ -5146,15 +5153,39 @@ c1 c2 c3
|
||||
TRUNCATE TABLE t5;
|
||||
INSERT INTO t5 SELECT * FROM t4 WHERE c1 >='12colon34colon56';
|
||||
Warnings:
|
||||
Warning 1292 Incorrect time value: '12colon34colon56' for column 'c1' at row 1
|
||||
Warning 1292 Truncated incorrect time value: '12colon34colon56'
|
||||
SELECT * FROM t5;
|
||||
c1 c2 c3
|
||||
12:34:56 12:34:56 2009-01-01
|
||||
10:22:33 10:22:33 2009-01-02
|
||||
01:23:00 01:23:00 2009-01-03
|
||||
491:22:33 491:22:33 2009-01-04
|
||||
825:23:00 825:23:00 2009-01-05
|
||||
10:00:00 10:00:00 2009-01-06
|
||||
00:00:45 00:00:45 2009-01-07
|
||||
00:00:00 00:00:00 2009-01-09
|
||||
838:59:59 838:59:59 2009-01-10
|
||||
838:59:59 838:59:59 2009-01-28
|
||||
838:59:59 838:59:59 2009-01-29
|
||||
10:11:12 10:11:12 2009-01-11
|
||||
11:11:12 11:11:12 2009-01-12
|
||||
00:00:12 00:00:12 2009-01-13
|
||||
00:12:34 00:12:34 2009-01-14
|
||||
12:34:58 12:34:58 2009-01-15
|
||||
12:35:56 12:35:56 2009-01-16
|
||||
11:11:27 11:11:27 2009-01-17
|
||||
08:03:02 08:03:02 2009-01-18
|
||||
00:11:12 00:11:12 2009-01-19
|
||||
00:00:11 00:00:11 2009-01-20
|
||||
00:12:30 00:12:30 2009-01-23
|
||||
09:00:45 09:00:45 2009-01-24
|
||||
09:36:00 09:36:00 2009-01-25
|
||||
00:00:10 00:00:10 2009-01-26
|
||||
00:00:00 00:00:00 2009-01-27
|
||||
00:00:00 00:00:00 2009-01-28
|
||||
00:00:00 00:00:00 2009-01-29
|
||||
262:22:00 262:22:00 2009-01-30
|
||||
00:00:12 00:00:12 2009-01-31
|
||||
08:29:45 NULL 2009-02-01
|
||||
00:00:00 07:23:55 NULL
|
||||
TRUNCATE TABLE t5;
|
||||
DROP TABLE t5;
|
||||
DROP TABLE t1,t2,t3,t4;
|
||||
|
Reference in New Issue
Block a user