mirror of
https://github.com/MariaDB/server.git
synced 2025-09-11 05:52:26 +03:00
Bug #40360: Binlog related errors with binlog off
When statement-based replication is used, and the transaction isolation level is READ-COMMITTED or stricter, InnoDB will print an error because statement-based replication might lead to inconsistency between master and slave databases. However, when the binary log is not engaged, this is not an issue and an error should not be printed. This patch makes thd_binlog_format() return BINLOG_FORMAT_ UNSPEC when the binary log is not engaged for the given thread.
This commit is contained in:
@@ -2852,7 +2852,10 @@ extern "C" int thd_non_transactional_update(const MYSQL_THD thd)
|
||||
|
||||
extern "C" int thd_binlog_format(const MYSQL_THD thd)
|
||||
{
|
||||
return (int) thd->variables.binlog_format;
|
||||
if (mysql_bin_log.is_open() && (thd->options & OPTION_BIN_LOG))
|
||||
return (int) thd->variables.binlog_format;
|
||||
else
|
||||
return BINLOG_FORMAT_UNSPEC;
|
||||
}
|
||||
|
||||
extern "C" void thd_mark_transaction_to_rollback(MYSQL_THD thd, bool all)
|
||||
|
Reference in New Issue
Block a user