mirror of
https://github.com/MariaDB/server.git
synced 2025-01-17 04:22:27 +01:00
3f515a09ff
As a fix for MDEV-8208, for initial wsrep threads, the invocation of init_for_queries() was moved after plugins were initialized. Due to which, OPTION_BEGIN bit of wsrep applier THD (originally set in wsrep_replication_process) got reset due to implicit commit within init_for_queries(). As a result, events from a multi-statement transaction from another node were committed separately by the applier thread, which leads to an assertion as they all carry same seqno. Fixed by making sure that variable.option_bits are restored post init_for_queries(). Also restored server_status. Added a test case.
24 lines
580 B
Text
24 lines
580 B
Text
--source include/galera_cluster.inc
|
|
--source include/have_innodb.inc
|
|
|
|
--echo #
|
|
--echo # MDEV-9290 : InnoDB: Assertion failure in file trx0sys.cc line 353
|
|
--echo # InnoDB: Failing assertion: xid_seqno > trx_sys_cur_xid_seqno
|
|
--echo #
|
|
|
|
--connection node_1
|
|
CREATE TABLE t1 (i INT) ENGINE=InnoDB;
|
|
|
|
--connection node_2
|
|
# Note: a multi-statement transaction should always be the "first" one to execute
|
|
# on this node.
|
|
START TRANSACTION;
|
|
INSERT INTO t1 VALUES (1);
|
|
INSERT INTO t1 VALUES (2);
|
|
COMMIT;
|
|
|
|
--connection node_1
|
|
SELECT * FROM t1;
|
|
DROP TABLE t1;
|
|
|
|
--source include/galera_end.inc
|