Bug #32039 rpl_ndb_auto_inc should list error 1062 instead or 1022
Submitted: 2 Nov 2007 1:12 Modified: 2 Nov 2007 6:21
Reporter: Jonathan Miller Email Updates:
Status: Not a Bug Impact on me:
None 
Category:Tests: Cluster Severity:S3 (Non-critical)
Version:mysql-5.1 OS:Any
Assigned to: Jonathan Miller CPU Architecture:Any

[2 Nov 2007 1:12] Jonathan Miller
Description:
mysqltest: At line 12: query 'insert into t1 values(600),(NULL),(NULL)' failed with wro
RIMARY'', instead of 1022...
(the last lines may be the most important ones)

Stopping All Servers
Restoring snapshot of databases
Resuming Tests

main.jeb_ndb                   [ fail ]

Errors are (from /data0/jebs_clones/mysql-5.1-new-ndb/mysql-test/var/log/mysqltest-time
mysqltest: At line 12: query 'insert into t1 values(600),(NULL),(NULL)' failed with wro
RIMARY'', instead of 1022...
(the last lines may be the most important ones)

Stopping All Servers
Restoring snapshot of databases
Resuming Tests

main.jeb                       [ fail ]

Errors are (from /data0/jebs_clones/mysql-5.1-new-ndb/mysql-test/var/log/mysqltest-time) :
mysqltest: Result length mismatch
(the last lines may be the most important ones)
Below are the diffs between actual and expected results:
-------------------------------------------------------
*** /data0/jebs_clones/mysql-5.1-new-ndb/mysql-test/r/jeb.result        Fri Nov  2 04:06:25 2007
--- /data0/jebs_clones/mysql-5.1-new-ndb/mysql-test/r/jeb.reject        Fri Nov  2 04:09:11 2007
***************
*** 0 ****
--- 1,21 ----
+ create table t1 (a int not null auto_increment, primary key (a)) engine=myisam;
+ insert into t1 values (NULL),(5),(NULL),(NULL);
+ insert into t1 values (500),(NULL),(502),(NULL),(600);
+ ******* Select from Master *************
+
+ select * from t1 ORDER BY a;
+ a
+ 1
+ 5
+ 6
+ 7
+ 500
+ 501
+ 502
+ 503
+ 600
+ set @@insert_id=600;
+ insert into t1 values(600),(NULL),(NULL);
+ Got one of the listed errors
+ set @@insert_id=600;
+ insert ignore into t1 values(600),(NULL),(NULL),(610),(NULL);
-------------------------------------------------------
Please follow the instructions outlined at
http://www.mysql.com/doc/en/Reporting_mysqltest_bugs.html
to find the reason to this problem and how to report this.

Stopping All Servers
Restoring snapshot of databases
Resuming Tests

main.jeb_ndb                   [ fail ]

Errors are (from /data0/jebs_clones/mysql-5.1-new-ndb/mysql-test/var/log/mysqltest-time) :
mysqltest: Result length mismatch
(the last lines may be the most important ones)
Below are the diffs between actual and expected results:
-------------------------------------------------------
*** /data0/jebs_clones/mysql-5.1-new-ndb/mysql-test/r/jeb_ndb.result    Fri Nov  2 04:06:12 2007
--- /data0/jebs_clones/mysql-5.1-new-ndb/mysql-test/r/jeb_ndb.reject    Fri Nov  2 04:09:12 2007
***************
*** 0 ****
--- 1,24 ----
+ create table t1 (a int not null auto_increment, primary key (a)) engine=NDB;
+ Warnings:
+ Warning       1286    Unknown table engine 'NDB'
+ Warning       1266    Using storage engine MyISAM for table 't1'
+ insert into t1 values (NULL),(5),(NULL),(NULL);
+ insert into t1 values (500),(NULL),(502),(NULL),(600);
+ ******* Select from Master *************
+
+ select * from t1 ORDER BY a;
+ a
+ 1
+ 5
+ 6
+ 7
+ 500
+ 501
+ 502
+ 503
+ 600
+ set @@insert_id=600;
+ insert into t1 values(600),(NULL),(NULL);
+ Got one of the listed errors
+ set @@insert_id=600;
+ insert ignore into t1 values(600),(NULL),(NULL),(610),(NULL);
-------------------------------------------------------
Please follow the instructions outlined at
http://www.mysql.com/doc/en/Reporting_mysqltest_bugs.html
to find the reason to this problem and how to report this.

Stopping All Servers
Restoring snapshot of databases
Resuming Tests

-------------------------------------------------------
Stopping All Servers
Failed 2/2 tests, 0.00% were successful.

The log files in var/log may give you some hint
of what went wrong.
If you want to report this error, please read first the documentation at
http://www.mysql.com/doc/en/MySQL_test_suite.html
The servers were restarted 2 times
Spent 0 seconds actually executing testcases

mysql-test-run in default mode: *** Failing the test(s): main.jeb main.jeb_ndb
mysql-test-run: *** ERROR: there were failing test cases

How to repeat:
create table t1 (a int not null auto_increment, primary key (a)) engine=NDB;
# Insert with 2 insert statements to get better testing of logging
insert into t1 values (NULL),(5),(NULL),(NULL);
insert into t1 values (500),(NULL),(502),(NULL),(600);
--echo ******* Select from Master *************
--echo
select * from t1 ORDER BY a;
set @@insert_id=600;
# We expect a duplicate key error that we will ignore below
--error 1022
insert into t1 values(600),(NULL),(NULL);
set @@insert_id=600;
insert ignore into t1 values(600),(NULL),(NULL),(610),(NULL);