Bug #11519 type_timestamp fails on many platforms
Submitted: 23 Jun 2005 5:17 Modified: 1 Jul 2005 12:59
Reporter: Matt Wagner Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server Severity:S2 (Serious)
Version:5.0.8 OS:many
Assigned to: Kent Boortz CPU Architecture:Any

[23 Jun 2005 5:17] Matt Wagner
Description:
type_timestamp                  [ fail ]
09810: Errors are (from /build/mysqldev/build/test/mysql-debug-5.0.8-beta-linux-i686/mysql-test/var/log/mysqltest-time) :
09811: /build/mysqldev/build/test/mysql-debug-5.0.8-beta-linux-i686/bin/mysqltest: At line 324: Result content mismatch
09812: (the last lines may be the most important ones)
09813: Below are the diffs between actual and expected results:
09814: -------------------------------------------------------
09815: *** r/type_timestamp.result      Thu Jun 23 01:15:44 2005
09816: --- r/type_timestamp.reject      Thu Jun 23 01:53:17 2005
09817: ***************
09818: *** 181,187 ****
09819:   insert into t1 (t1,t3) values (default, default);
09820:   select * from t1;
09821:   t1     t2      t3
09822: ! 2003-01-01 00:00:00    2001-09-09 04:46:41     0000-00-00 00:00:00
09823:   2003-01-01 00:00:00    NULL    0000-00-00 00:00:00
09824:   show create table t1;
09825:   Table  Create Table
09826: --- 181,187 ----
09827:   insert into t1 (t1,t3) values (default, default);
09828:   select * from t1;
09829:   t1     t2      t3
09830: ! 2003-01-01 00:00:00    2001-09-09 05:46:19     0000-00-00 00:00:00
09831:   2003-01-01 00:00:00    NULL    0000-00-00 00:00:00
09832:   show create table t1;
09833:   Table  Create Table
09834: ***************
09835: *** 205,212 ****
09836:   insert into t1 (t1,t3) values (default, default);
09837:   select * from t1;
09838:   t1     t2      t3
09839: ! 2001-09-09 04:46:42    2001-09-09 04:46:43     0000-00-00 00:00:00
09840: ! 2001-09-09 04:46:43    NULL    0000-00-00 00:00:00
09841:   show create table t1;
09842:   Table  Create Table
09843:   t1     CREATE TABLE `t1` (
09844: --- 205,212 ----
09845:   insert into t1 (t1,t3) values (default, default);
09846:   select * from t1;
09847:   t1     t2      t3
09848: ! 2001-09-09 05:46:20    2001-09-09 05:46:21     0000-00-00 00:00:00
09849: ! 2001-09-09 05:46:21    NULL    0000-00-00 00:00:00
09850:   show create table t1;
09851:   Table  Create Table
09852:   t1     CREATE TABLE `t1` (
09853: ***************
09854: *** 232,238 ****
09855:   insert into t1 (t1) values (default);
09856:   select * from t1;
09857:   t1     t2
09858: ! 2001-09-09 04:46:45    2001-09-09 04:46:45
09859:   2003-01-01 00:00:00    NULL
09860:   show create table t1;
09861:   Table  Create Table
09862: --- 232,238 ----
09863:   insert into t1 (t1) values (default);
09864:   select * from t1;
09865:   t1     t2
09866: ! 2001-09-09 05:46:23    2001-09-09 05:46:23
09867:   2003-01-01 00:00:00    NULL
09868:   show create table t1;
09869:   Table  Create Table
09870: ***************
09871: *** 250,264 ****
09872:   insert into t1 values ();
09873:   select * from t1;
09874:   t1     t2
09875: ! 2001-09-09 04:46:46    NULL
09876:   SET TIMESTAMP=1000000007;
09877:   update t1 set t2=now();
09878:   SET TIMESTAMP=1000000007;
09879:   insert into t1 (t1) values (default);
09880:   select * from t1;
09881:   t1     t2
09882: ! 2001-09-09 04:46:47    2001-09-09 04:46:47
09883: ! 2001-09-09 04:46:47    NULL
09884:   show create table t1;
09885:   Table  Create Table
09886:   t1     CREATE TABLE `t1` (
09887: --- 250,264 ----
09888:   insert into t1 values ();
09889:   select * from t1;
09890:   t1     t2
09891: ! 2001-09-09 05:46:24    NULL
09892:   SET TIMESTAMP=1000000007;
09893:   update t1 set t2=now();
09894:   SET TIMESTAMP=1000000007;
09895:   insert into t1 (t1) values (default);
09896:   select * from t1;
09897:   t1     t2
09898: ! 2001-09-09 05:46:25    2001-09-09 05:46:25
09899: ! 2001-09-09 05:46:25    NULL
09900:   show create table t1;
09901:   Table  Create Table
09902:   t1     CREATE TABLE `t1` (
09903: ***************
09904: *** 275,289 ****
09905:   insert into t1 values ();
09906:   select * from t1;
09907:   t1     t2      t3
09908: ! 2001-09-09 04:46:47    NULL    0000-00-00 00:00:00
09909:   SET TIMESTAMP=1000000008;
09910:   update t1 set t2=now();
09911:   SET TIMESTAMP=1000000008;
09912:   insert into t1 (t1,t3) values (default, default);
09913:   select * from t1;
09914:   t1     t2      t3
09915: ! 2001-09-09 04:46:48    2001-09-09 04:46:48     0000-00-00 00:00:00
09916: ! 2001-09-09 04:46:48    NULL    0000-00-00 00:00:00
09917:   show create table t1;
09918:   Table  Create Table
09919:   t1     CREATE TABLE `t1` (
09920: --- 275,289 ----
09921:   insert into t1 values ();
09922:   select * from t1;
09923:   t1     t2      t3
09924: ! 2001-09-09 05:46:25    NULL    0000-00-00 00:00:00
09925:   SET TIMESTAMP=1000000008;
09926:   update t1 set t2=now();
09927:   SET TIMESTAMP=1000000008;
09928:   insert into t1 (t1,t3) values (default, default);
09929:   select * from t1;
09930:   t1     t2      t3
09931: ! 2001-09-09 05:46:26    2001-09-09 05:46:26     0000-00-00 00:00:00
09932: ! 2001-09-09 05:46:26    NULL    0000-00-00 00:00:00
09933:   show create table t1;
09934:   Table  Create Table
09935:   t1     CREATE TABLE `t1` (
09936: ***************
09937: *** 302,316 ****
09938:   insert into t1 values ();
09939:   select * from t1;
09940:   t1     t2
09941: ! 2001-09-09 04:46:49    NULL
09942:   SET TIMESTAMP=1000000010;
09943:   update t1 set t2=now();
09944:   SET TIMESTAMP=1000000011;
09945:   insert into t1 (t1) values (default);
09946:   select * from t1;
09947:   t1     t2
09948: ! 2001-09-09 04:46:50    2001-09-09 04:46:50
09949: ! 2001-09-09 04:46:51    NULL
09950:   show create table t1;
09951:   Table  Create Table
09952:   t1     CREATE TABLE `t1` (
09953: --- 302,316 ----
09954:   insert into t1 values ();
09955:   select * from t1;
09956:   t1     t2
09957: ! 2001-09-09 05:46:27    NULL
09958:   SET TIMESTAMP=1000000010;
09959:   update t1 set t2=now();
09960:   SET TIMESTAMP=1000000011;
09961:   insert into t1 (t1) values (default);
09962:   select * from t1;
09963:   t1     t2
09964: ! 2001-09-09 05:46:28    2001-09-09 05:46:28
09965: ! 2001-09-09 05:46:29    NULL
09966:   show create table t1;
09967:   Table  Create Table
09968:   t1     CREATE TABLE `t1` (
09969: ***************
09970: *** 339,345 ****
09971:   replace into t1 set pk = 1, bulk= 20;
09972:   select * from t1;
09973:   pk     t1      bulk
09974: ! 1      2001-09-09 04:46:53     20
09975:   drop table t1;
09976:   create table t1 (pk int primary key, t1 timestamp default '2003-01-01 00:00:00' on update current_timestamp, bulk int);
09977:   insert into t1 values (1, '2004-04-01 00:00:00', 10);
09978: --- 339,345 ----
09979:   replace into t1 set pk = 1, bulk= 20;
09980:   select * from t1;
09981:   pk     t1      bulk
09982: ! 1      2001-09-09 05:46:31     20
09983:   drop table t1;
09984:   create table t1 (pk int primary key, t1 timestamp default '2003-01-01 00:00:00' on update current_timestamp, bulk int);
09985:   insert into t1 values (1, '2004-04-01 00:00:00', 10);
09986: ***************
09987: *** 355,361 ****
09988:   replace into t1 set pk = 1, bulk= 20;
09989:   select * from t1;
09990:   pk     t1      bulk
09991: ! 1      2001-09-09 04:46:55     20
09992:   drop table t1;
09993:   create table t1 (t1 timestamp default current_timestamp on update current_timestamp);
09994:   insert into t1 values ('2004-04-01 00:00:00');
09995: --- 355,361 ----
09996:   replace into t1 set pk = 1, bulk= 20;
09997:   select * from t1;
09998:   pk     t1      bulk
09999: ! 1      2001-09-09 05:46:33     20
10000:   drop table t1;
10001:   create table t1 (t1 timestamp default current_timestamp on update current_timestamp);
10002:   insert into t1 values ('2004-04-01 00:00:00');
10003: ***************
10004: *** 393,399 ****
10005:   select * from t1;
10006:   a      b
10007:   NULL   NULL
10008: ! 2001-09-09 04:46:58    NULL
10009:   drop table t1;
10010:   create table t1 (a timestamp null default null, b timestamp null default '2003-01-01 00:00:00');
10011:   show create table t1;
10012: --- 393,399 ----
10013:   select * from t1;
10014:   a      b
10015:   NULL   NULL
10016: ! 2001-09-09 05:46:36    NULL
10017:   drop table t1;
10018:   create table t1 (a timestamp null default null, b timestamp null default '2003-01-01 00:00:00');
10019:   show create table t1;
10020: ***************
10021: *** 415,421 ****
10022:   alter table t1 modify a timestamp, modify b timestamp;
10023:   select * from t1;
10024:   a      b
10025: ! 2001-09-09 04:46:59    2001-09-09 04:46:59
10026:   2003-01-01 00:00:00    2003-01-02 00:00:00
10027:   drop table t1;
10028:   create table t1 (a char(2), t timestamp);
10029: --- 415,421 ----
10030:   alter table t1 modify a timestamp, modify b timestamp;
10031:   select * from t1;
10032:   a      b
10033: ! 2001-09-09 05:46:37    2001-09-09 05:46:37
10034:   2003-01-01 00:00:00    2003-01-02 00:00:00
10035:   drop table t1;
10036:   create table t1 (a char(2), t timestamp);
10037: ***************
10038: *** 456,462 ****
10039:   1      0       2001-01-01 01:01:01
10040:   2      2       2002-02-02 02:02:02
10041:   3      0       2003-03-03 03:03:03
10042: ! 4      NULL    2001-09-09 04:46:59
10043:   update t1 set c = '2004-04-04 04:04:04' where a = 4;
10044:   select * from t1;
10045:   a      b       c
10046: --- 456,462 ----
10047:   1      0       2001-01-01 01:01:01
10048:   2      2       2002-02-02 02:02:02
10049:   3      0       2003-03-03 03:03:03
10050: ! 4      NULL    2001-09-09 05:46:37
10051:   update t1 set c = '2004-04-04 04:04:04' where a = 4;
10052:   select * from t1;
10053:   a      b       c
10054: ***************
10055: *** 471,477 ****
10056:   2      2       2002-02-02 02:02:02
10057:   3      3       2003-03-03 03:03:03
10058:   4      NULL    2004-04-04 04:04:04
10059: ! 5      NULL    2001-09-09 04:46:59
10060:   insert into t1 (a, c) values (4, '2004-04-04 00:00:00'),
10061:   (6, '2006-06-06 06:06:06') on duplicate key update b = 4;
10062:   select * from t1;
10063: --- 471,477 ----
10064:   2      2       2002-02-02 02:02:02
10065:   3      3       2003-03-03 03:03:03
10066:   4      NULL    2004-04-04 04:04:04
10067: ! 5      NULL    2001-09-09 05:46:37
10068:   insert into t1 (a, c) values (4, '2004-04-04 00:00:00'),
10069:   (6, '2006-06-06 06:06:06') on duplicate key update b = 4;
10070:   select * from t1;
10071: ***************
10072: *** 479,485 ****
10073:   1      0       2001-01-01 01:01:01
10074:   2      2       2002-02-02 02:02:02
10075:   3      3       2003-03-03 03:03:03
10076: ! 4      4       2001-09-09 04:46:59
10077: ! 5      NULL    2001-09-09 04:46:59
10078:   6      NULL    2006-06-06 06:06:06
10079:   drop table t1;
10080: --- 479,485 ----
10081:   1      0       2001-01-01 01:01:01
10082:   2      2       2002-02-02 02:02:02
10083:   3      3       2003-03-03 03:03:03
10084: ! 4      4       2001-09-09 05:46:37
10085: ! 5      NULL    2001-09-09 05:46:37
10086:   6      NULL    2006-06-06 06:06:06
10087:   drop table t1;
10088: -------------------------------------------------------
10089: Please follow the instructions outlined at
10090: http://www.mysql.com/doc/en/Reporting_mysqltest_bugs.html
10091: to find the reason to this problem and how to report this.
10092: 

How to repeat:
Run the test suite on a 5.0.8-beta -debug binary.