From: Martin Hansson Date: April 14 2011 9:36am Subject: bzr commit into mysql-trunk branch (martin.hansson:3313) Bug#11758558 List-Archive: http://lists.mysql.com/commits/135417 X-Bug: 11758558 MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="===============2003360579==" --===============2003360579== MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Content-Disposition: inline #At file:///data0/martin/bzrroot/bug11758558/mysql-trunk/ based on revid:jon.hauglid@stripped 3313 Martin Hansson 2011-04-14 [merge] Merge of test case for bug#11758558 - 50774 modified: mysql-test/r/type_timestamp.result mysql-test/t/type_timestamp.test === modified file 'mysql-test/r/type_timestamp.result' --- a/mysql-test/r/type_timestamp.result 2011-01-12 17:24:53 +0000 +++ b/mysql-test/r/type_timestamp.result 2011-04-14 09:36:26 +0000 @@ -523,6 +523,69 @@ a 2000-01-01 00:00:01 2000-01-01 00:00:01 DROP TABLE t1; +# +# Bug#50774: failed to get the correct resultset when timestamp values +# are appended with .0 +# +CREATE TABLE t1 ( a TIMESTAMP, KEY ( a ) ); +INSERT INTO t1 VALUES( '2010-02-01 09:31:01' ); +INSERT INTO t1 VALUES( '2010-02-01 09:31:02' ); +INSERT INTO t1 VALUES( '2010-02-01 09:31:03' ); +INSERT INTO t1 VALUES( '2010-02-01 09:31:04' ); +SELECT * FROM t1 WHERE a >= '2010-02-01 09:31:02.0'; +a +2010-02-01 09:31:02 +2010-02-01 09:31:03 +2010-02-01 09:31:04 +SELECT * FROM t1 WHERE '2010-02-01 09:31:02.0' <= a; +a +2010-02-01 09:31:02 +2010-02-01 09:31:03 +2010-02-01 09:31:04 +SELECT * FROM t1 WHERE a <= '2010-02-01 09:31:02.0'; +a +2010-02-01 09:31:01 +2010-02-01 09:31:02 +SELECT * FROM t1 WHERE '2010-02-01 09:31:02.0' >= a; +a +2010-02-01 09:31:01 +2010-02-01 09:31:02 +EXPLAIN +SELECT * FROM t1 WHERE a >= '2010-02-01 09:31:02.0'; +id select_type table type possible_keys key key_len ref rows Extra +x x x range x x x x x x +SELECT * FROM t1 WHERE a >= '2010-02-01 09:31:02.0'; +a +2010-02-01 09:31:02 +2010-02-01 09:31:03 +2010-02-01 09:31:04 +CREATE TABLE t2 ( a TIMESTAMP, KEY ( a DESC ) ); +INSERT INTO t2 VALUES( '2010-02-01 09:31:01' ); +INSERT INTO t2 VALUES( '2010-02-01 09:31:02' ); +INSERT INTO t2 VALUES( '2010-02-01 09:31:03' ); +INSERT INTO t2 VALUES( '2010-02-01 09:31:04' ); +INSERT INTO t2 VALUES( '2010-02-01 09:31:05' ); +INSERT INTO t2 VALUES( '2010-02-01 09:31:06' ); +INSERT INTO t2 VALUES( '2010-02-01 09:31:07' ); +INSERT INTO t2 VALUES( '2010-02-01 09:31:08' ); +INSERT INTO t2 VALUES( '2010-02-01 09:31:09' ); +INSERT INTO t2 VALUES( '2010-02-01 09:31:10' ); +INSERT INTO t2 VALUES( '2010-02-01 09:31:11' ); +# The bug would cause the range optimizer's comparison to use an open +# interval here. This reveals itself only in the number of reads +# performed. +FLUSH STATUS; +EXPLAIN +SELECT * FROM t2 WHERE a < '2010-02-01 09:31:02.0'; +id select_type table type possible_keys key key_len ref rows Extra +x x x range x x x x x x +SELECT * FROM t2 WHERE a < '2010-02-01 09:31:02.0'; +a +2010-02-01 09:31:01 +SHOW STATUS LIKE 'Handler_read_next'; +Variable_name Value +Handler_read_next 1 +DROP TABLE t1, t2; End of 5.1 tests Bug#50888 valgrind warnings in Field_timestamp::val_str === modified file 'mysql-test/t/type_timestamp.test' --- a/mysql-test/t/type_timestamp.test 2011-01-12 12:58:47 +0000 +++ b/mysql-test/t/type_timestamp.test 2011-04-14 09:31:45 +0000 @@ -362,6 +362,53 @@ SELECT a FROM t1 WHERE a >= '20000101000 DROP TABLE t1; +--echo # +--echo # Bug#50774: failed to get the correct resultset when timestamp values +--echo # are appended with .0 +--echo # +CREATE TABLE t1 ( a TIMESTAMP, KEY ( a ) ); + +INSERT INTO t1 VALUES( '2010-02-01 09:31:01' ); +INSERT INTO t1 VALUES( '2010-02-01 09:31:02' ); +INSERT INTO t1 VALUES( '2010-02-01 09:31:03' ); +INSERT INTO t1 VALUES( '2010-02-01 09:31:04' ); + +SELECT * FROM t1 WHERE a >= '2010-02-01 09:31:02.0'; +SELECT * FROM t1 WHERE '2010-02-01 09:31:02.0' <= a; +SELECT * FROM t1 WHERE a <= '2010-02-01 09:31:02.0'; +SELECT * FROM t1 WHERE '2010-02-01 09:31:02.0' >= a; + +--replace_column 1 x 2 x 3 x 5 x 6 x 7 x 8 x 9 x 10 x +EXPLAIN +SELECT * FROM t1 WHERE a >= '2010-02-01 09:31:02.0'; +SELECT * FROM t1 WHERE a >= '2010-02-01 09:31:02.0'; + +CREATE TABLE t2 ( a TIMESTAMP, KEY ( a DESC ) ); + +INSERT INTO t2 VALUES( '2010-02-01 09:31:01' ); +INSERT INTO t2 VALUES( '2010-02-01 09:31:02' ); +INSERT INTO t2 VALUES( '2010-02-01 09:31:03' ); +INSERT INTO t2 VALUES( '2010-02-01 09:31:04' ); +INSERT INTO t2 VALUES( '2010-02-01 09:31:05' ); +INSERT INTO t2 VALUES( '2010-02-01 09:31:06' ); +INSERT INTO t2 VALUES( '2010-02-01 09:31:07' ); +INSERT INTO t2 VALUES( '2010-02-01 09:31:08' ); +INSERT INTO t2 VALUES( '2010-02-01 09:31:09' ); +INSERT INTO t2 VALUES( '2010-02-01 09:31:10' ); +INSERT INTO t2 VALUES( '2010-02-01 09:31:11' ); + +--echo # The bug would cause the range optimizer's comparison to use an open +--echo # interval here. This reveals itself only in the number of reads +--echo # performed. +FLUSH STATUS; +--replace_column 1 x 2 x 3 x 5 x 6 x 7 x 8 x 9 x 10 x +EXPLAIN +SELECT * FROM t2 WHERE a < '2010-02-01 09:31:02.0'; +SELECT * FROM t2 WHERE a < '2010-02-01 09:31:02.0'; +SHOW STATUS LIKE 'Handler_read_next'; + +DROP TABLE t1, t2; + --echo End of 5.1 tests --echo --===============2003360579== MIME-Version: 1.0 Content-Type: text/bzr-bundle; charset="us-ascii"; name="bzr/martin.hansson@stripped" Content-Transfer-Encoding: 7bit Content-Disposition: inline # Bazaar merge directive format 2 (Bazaar 0.90) # revision_id: martin.hansson@stripped\ # 3pd3rnv73b43tunn # target_branch: file:///data0/martin/bzrroot/bug11758558/mysql-trunk/ # testament_sha1: d9f8558f2b5cc5991b6a8f36f268c72e6c436e75 # timestamp: 2011-04-14 11:37:03 +0200 # source_branch: file:///data0/martin/bzrroot/bug11758558/mysql-5.5/ # base_revision_id: jon.hauglid@stripped\ # 3nkimc3wcv5zkj7c # # Begin bundle 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 kOYGJ0fRHVweJW+T/+LuSKcKEg68Z1pg --===============2003360579==--