mirror of
https://github.com/MariaDB/server.git
synced 2025-02-09 23:24:11 +01:00
632b1deb67
If a transaction had no effect due to INSERT IGNORE and a new transaction was started with START TRANSACTION without committing the previous one, the server crashed on assertion when starting a new wsrep transaction. As a fix, refined the condition to do wsrep_commit_empty() at the end of the ha_commit_trans().
22 lines
635 B
Text
22 lines
635 B
Text
#
|
|
# MDEV-21205
|
|
#
|
|
# Start transaction after INSERT IGNORE which had no effect and
|
|
# kept the transaction open caused an assertion on the following
|
|
# START TRANSACTION because the empty transaction was not properly
|
|
# terminated.
|
|
#
|
|
|
|
--source include/galera_cluster.inc
|
|
CREATE TABLE t1 (f1 INTEGER PRIMARY KEY);
|
|
START TRANSACTION;
|
|
INSERT INTO t1 (f1) VALUES (1);
|
|
|
|
START TRANSACTION;
|
|
# This INSERT succeeds with duplicate key warning due to IGNORE clause
|
|
# and keeps the transaction open. The following START TRANSACTION causes
|
|
# an assertion if the bug is present.
|
|
INSERT IGNORE INTO t1 (f1) VALUES (1);
|
|
START TRANSACTION;
|
|
|
|
DROP TABLE t1;
|