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

MDEV-6924 : Server crashed on CREATE TABLE ... SELECT

Do not allow server to start if binlog_format is set
to a format other than ROW. Also restrict the change
of GLOBAL/SESSION binlog_format value at runtime.
This commit is contained in:
Nirbhay Choubey
2014-11-17 09:55:53 -05:00
parent cc9d1bd8dc
commit c68e73b53f
8 changed files with 116 additions and 20 deletions

View File

@@ -5885,6 +5885,16 @@ 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);