mirror of
https://github.com/MariaDB/server.git
synced 2025-08-31 22:22:30 +03:00
Bug #32709: Assertion failed: trx_data->empty(), file log.cc
The assertion indicates that some data was left in the transaction cache when the server was shut down, which means that a previous statement did not commit or rollback correctly. What happened was that a bug in the rollback of a transactional table caused the transaction cache to be emptied, but not reset. The error can be triggered by having a failing UPDATE or INSERT, on a transactional table, causing an implicit rollback. Fixed by always flushing the pending event to reset the state properly.
This commit is contained in:
@@ -520,3 +520,10 @@ INSERT INTO t7 VALUES (1, "", 1);
|
||||
INSERT INTO t7 VALUES (2, repeat(_utf8'a', 255), 2);
|
||||
Comparing tables master:test.t7 and slave:test.t7
|
||||
drop table t1, t2, t3, t4, t5, t6, t7;
|
||||
CREATE TABLE t1 (a INT PRIMARY KEY) ENGINE='INNODB' ;
|
||||
INSERT INTO t1 VALUES (1), (2), (3);
|
||||
UPDATE t1 SET a = 10;
|
||||
ERROR 23000: Duplicate entry '10' for key 'PRIMARY'
|
||||
INSERT INTO t1 VALUES (4);
|
||||
Comparing tables master:test.t1 and slave:test.t1
|
||||
drop table t1;
|
||||
|
Reference in New Issue
Block a user