1
0
mirror of https://github.com/MariaDB/server.git synced 2025-08-08 11:22:35 +03:00

MDEV-7995 : DMLs not getting replicated with log-bin=OFF & binlog-format != ROW

This bug is a side-effect of fix for MDEV-6924, where we completely
stopped a statement-based event from getting into the binlog cache when
binary logging is not enabled (and thus, wsrep_emulate_binlog mode = 1).
As a result, the SBR events were not replicated.

Fixed by allowing the SBR events to be written into the binlog cache.

Note: Only DMLs were affected as DDLs are replicated via TOI.

Merged galera_create_trigger.test from github.com/codership/mysql-wsrep.
This commit is contained in:
Nirbhay Choubey
2015-04-22 18:13:30 -04:00
parent d7445ea6df
commit 581b49dd3d
4 changed files with 58 additions and 11 deletions

View File

@@ -5885,16 +5885,6 @@ int THD::binlog_query(THD::enum_binlog_query_type qtype, char const *query_arg,
The MYSQL_LOG::write() function will set the STMT_END_F flag and
flush the pending rows event if necessary.
*/
#ifdef WITH_WSREP
/*
Even though wsrep only supports ROW binary log format, a user can set
binlog format to STATEMENT (wsrep_forced_binlog_format). In which case
the control might reach here even when binary logging (--log-bin) is
not enabled. This is possible because wsrep patch partially enables
binary logging by setting wsrep_emulate_binlog.
*/
if (mysql_bin_log.is_open())
#endif /* WITH_WSREP */
{
Query_log_event qinfo(this, query_arg, query_len, is_trans, direct,
suppress_use, errcode);