diff options
-rw-r--r-- | mysql-test/suite/galera/r/MDEV-22708.result | 11 | ||||
-rw-r--r-- | mysql-test/suite/galera/t/MDEV-22708.cnf | 4 | ||||
-rw-r--r-- | mysql-test/suite/galera/t/MDEV-22708.test | 14 | ||||
-rw-r--r-- | sql/sql_insert.cc | 2 |
4 files changed, 30 insertions, 1 deletions
diff --git a/mysql-test/suite/galera/r/MDEV-22708.result b/mysql-test/suite/galera/r/MDEV-22708.result new file mode 100644 index 00000000000..a672ed7be0d --- /dev/null +++ b/mysql-test/suite/galera/r/MDEV-22708.result @@ -0,0 +1,11 @@ +connection node_2; +connection node_1; +SET @wsrep_forced_binlog_format_saved = @@GLOBAL.wsrep_forced_binlog_format; +SET @@GLOBAL.wsrep_forced_binlog_format = STATEMENT; +CREATE TABLE t1(c INT PRIMARY KEY) ENGINE = MyISAM; +INSERT DELAYED INTO t1 VALUES (1),(2),(3); +SELECT SLEEP(1); +SLEEP(1) +0 +DROP TABLE t1; +SET @@GLOBAL.wsrep_forced_binlog_format = @wsrep_forced_binlog_format_saved; diff --git a/mysql-test/suite/galera/t/MDEV-22708.cnf b/mysql-test/suite/galera/t/MDEV-22708.cnf new file mode 100644 index 00000000000..f7ac4f43082 --- /dev/null +++ b/mysql-test/suite/galera/t/MDEV-22708.cnf @@ -0,0 +1,4 @@ +!include ../galera_2nodes.cnf + +[mysqld] +log-bin
\ No newline at end of file diff --git a/mysql-test/suite/galera/t/MDEV-22708.test b/mysql-test/suite/galera/t/MDEV-22708.test new file mode 100644 index 00000000000..5f75715febf --- /dev/null +++ b/mysql-test/suite/galera/t/MDEV-22708.test @@ -0,0 +1,14 @@ +--source include/galera_cluster.inc +--source include/have_innodb.inc + +SET @wsrep_forced_binlog_format_saved = @@GLOBAL.wsrep_forced_binlog_format; +SET @@GLOBAL.wsrep_forced_binlog_format = STATEMENT; + +CREATE TABLE t1(c INT PRIMARY KEY) ENGINE = MyISAM; + +INSERT DELAYED INTO t1 VALUES (1),(2),(3); +SELECT SLEEP(1); + +DROP TABLE t1; + +SET @@GLOBAL.wsrep_forced_binlog_format = @wsrep_forced_binlog_format_saved; diff --git a/sql/sql_insert.cc b/sql/sql_insert.cc index cbd815eb8fd..4dd0ec3375b 100644 --- a/sql/sql_insert.cc +++ b/sql/sql_insert.cc @@ -474,7 +474,7 @@ void upgrade_lock_type(THD *thd, thr_lock_type *lock_type, } bool log_on= (thd->variables.option_bits & OPTION_BIN_LOG); - if (global_system_variables.binlog_format == BINLOG_FORMAT_STMT && + if (thd->wsrep_binlog_format() == BINLOG_FORMAT_STMT && log_on && mysql_bin_log.is_open()) { /* |