Bug #17400 | Cluster Replication: delete & update of rows in table without pk fails on slave. | ||
---|---|---|---|
Submitted: | 14 Feb 2006 21:17 | Modified: | 13 May 2006 15:36 |
Reporter: | Jonathan Miller | Email Updates: | |
Status: | Closed | Impact on me: | |
Category: | MySQL Cluster: Replication | Severity: | S2 (Serious) |
Version: | 5.1.7 | OS: | Linux (Linux 32 Bit OS) |
Assigned to: | Mats Kindahl | CPU Architecture: | Any |
[14 Feb 2006 21:17]
Jonathan Miller
[14 Feb 2006 21:18]
Jonathan Miller
Note: Replace $engine_type with NDB
[16 Feb 2006 1:51]
Jonathan Miller
I also get it for new test CURRENT_TEST: rpl_ndb_multi_update3 060216 4:33:36 [ERROR] Slave: Error in Update_rows event: row application failed, Error_code: 137 060216 4:33:36 [ERROR] Slave: Error in Update_rows event: error during transaction execution on table test.t1, Error_code: 137 060216 4:33:36 [ERROR] Slave (additional info): Unknown error Error_code: 1105 060216 4:33:36 [Warning] Slave: Unknown error Error_code: 1105 060216 4:33:36 [Warning] Slave: Unknown error Error_code: 1105 --disable_warnings DROP TABLE IF EXISTS t1; DROP TABLE IF EXISTS t2; --enable_warnings CREATE TABLE t1 ( a1 char(30), a2 int, a3 int, a4 char(30), a5 char(30) ); CREATE TABLE t2 ( b1 int, b2 char(30) ); # Insert one row per table INSERT INTO t1 VALUES ('Yes', 1, NULL, 'foo', 'bar'); INSERT INTO t2 VALUES (1, 'baz'); # This should update the row in t1 UPDATE t1 a, t2 SET a.a1 = 'No' WHERE a.a2 = (SELECT b1 FROM t2 WHERE b2 = 'baz') AND a.a3 IS NULL AND a.a4 = 'foo' AND a.a5 = 'bar'; sync_slave_with_master; connection slave; SELECT * FROM t1; SELECT * FROM t2;
[24 Feb 2006 21:32]
Jonathan Miller
Okay I also get this when replicating from NDB -> MyISAM using PARTITION BY LIST --disable_warnings select "--- Start test 3 partition LIST testing --" as ""; select "--- Do setup --" as ""; --enable_query_log CREATE TABLE t1 (id MEDIUMINT NOT NULL, b1 BIT(8), vc VARCHAR(255), bc CHAR(255), d DECIMAL(10,4) DEFAULT 0, f FLOAT DEFAULT 0, total BIGINT UNSIGNED, y YEAR, t DATE)PARTITION BY LIST(id) (PARTITION p0 VALUES IN (2, 4), PARTITION p1 VALUES IN (42, 142)); --disable_warnings select "--- Test 3 Alter to add partition --" as ""; --enable_query_log SHOW CREATE TABLE t1; sync_slave_with_master; SHOW CREATE TABLE t1; --disable_query_log select "--- Perform basic operation on master and ensure replicated correctly --" as ""; --enable_query_log --source include/rpl_multi_engine3.inc --disable_warnings select "--- End test 3 partition LIST testing --" as ""; select "--- Do Cleanup --" as ""; --enable_query_log DROP TABLE IF EXISTS t1; 060225 0:18:29 [ERROR] Slave: Error in Delete_rows event: row application failed, Error_code: 137 060225 0:18:29 [ERROR] Slave: Error in Delete_rows event: error during transaction execution on table test.t1, Error_code: 137 060225 0:18:29 [ERROR] Slave (additional info): Unknown error Error_code: 1105 060225 0:18:29 [Warning] Slave: Unknown error Error_code: 1105 060225 0:18:29 [Warning] Slave: Unknown error Error_code: 1105
[17 Mar 2006 7:44]
Jonathan Miller
New Test case
Attachment: rpl_ndb_dd_partitions.test (application/octet-stream, text), 8.20 KiB.
[17 Mar 2006 7:47]
Jonathan Miller
Mats, The test case I attached today produce the following: 060317 10:40:35 [Note] NDB Binlog: logging ./test/t1 060317 10:40:50 [ERROR] Slave: Error in Delete_rows event: row application failed, Error_code: 137 060317 10:40:50 [ERROR] Slave: Error in Delete_rows event: error during transaction execution on table test.t1, Error_code: 137 060317 10:40:50 [ERROR] Slave (additional info): Unknown error Error_code: 1105 060317 10:40:50 [Warning] Slave: Unknown error Error_code: 1105 060317 10:40:50 [Warning] Slave: Unknown error Error_code: 1105 060317 10:40:50 [ERROR] Error running query, slave SQL thread aborted. Fix the problem, and restart the slave SQL thread with "SLAVE START". We stopped at log 'master-bin.000001' position 3033 TEST RESULT ------------------------------------------------------- rpl_ndb_dd_partitions [ fail ] Errors are (from /home/ndbdev/jmiller/clones/mysql-5.1-new/mysql-test/var/log/mysqltest-time) : mysqltest: At line 103: could not sync with master ('select master_pos_wait('master-bin.000001', 3826)' returned NULL) (the last lines may be the most important ones) I did a pull and rebuild last night so it should be current code base. Thanks /jbm
[19 Apr 2006 13:43]
Mats Kindahl
Bug fixed in current clone done (5.1.10). Missed the 5.1.9 clone-off by a few hours.
[20 Apr 2006 8:41]
Jon Stephens
Thank you for your bug report. This issue has been committed to our source repository of that product and will be incorporated into the next release. If necessary, you can access the source repository and build the latest available version, including the bugfix, yourself. More information about accessing the source trees is available at http://www.mysql.com/doc/en/Installing_source_tree.html Additional info: Documented bugfix in 5.1.10 changelog. Closed.
[21 Apr 2006 7:36]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/5260
[2 May 2006 12:48]
Jonathan Miller
I seem to have hit this one again. And since you are having fun with "bit" today this should add to that fun. rpl_bit_npk.test returns: 060502 15:08:14 [ERROR] Slave: Error in Update_rows event: row application failed, Error_code: 137 060502 15:08:14 [ERROR] Slave: Error in Update_rows event: error during transaction execution on table test.t1, Error_code: 137 060502 15:08:14 [ERROR] Slave (additional info): Unknown error Error_code: 1105 060502 15:08:14 [Warning] Slave: Unknown error Error_code: 1105 060502 15:08:14 [Warning] Slave: Unknown error Error_code: 1105 060502 15:08:14 [ERROR] Error running query, slave SQL thread aborted. Fix the problem, and restart the slave SQL thread with "SLAVE START". We stopped at log 'master-bin.000001' position 835 repeat: ./mysql-test-run.pl --do-test=rpl_bit_npk --mysqld=--default-storage-engine=ndb --force --with-ndbcluster-all Note: This was done from mysql-5.1-new pulled yesterday and built with comp-pent-debug-max script
[11 May 2006 9:50]
Mats Kindahl
Patch for bug pushed into current release clone (5.1.10). The bug requires no additional documentation.
[13 May 2006 15:36]
Jon Stephens
If there was nothing new to document, then there was no need to put it in Documenting status. :) Closed bug report.