diff options
author | Nirbhay Choubey <nirbhay@mariadb.com> | 2013-11-29 12:50:31 -0500 |
---|---|---|
committer | Nirbhay Choubey <nirbhay@mariadb.com> | 2013-11-29 12:50:31 -0500 |
commit | 6271c06a73ce1065ac53a554e42a0049bf77eb53 (patch) | |
tree | 1369cb0810745754b333b2f62427f991ebd2e813 /sql/wsrep_mysqld.h | |
parent | 62bd131d06eaf9567e63ea1c508eb07aa758b2e0 (diff) | |
download | mariadb-git-6271c06a73ce1065ac53a554e42a0049bf77eb53.tar.gz |
MDEV-4222: Assertion `( ((global_system_variables.wsrep_on) &&
(thd && thd->variables.wsrep_on)) && wsrep_emulate_bin_log) ||
mysql_bin_log .is_open()' fails on SAVEPOINT with disabled
wsrep_provider
As wsrep_on system variable is ON by default the binlog handlerton
is implicitly enabled during the server initialization phase. Later,
while wsrep plugin is getting initialized, wsrep_on in corrected &
turned OFF in case wsrep provider is not specified (leaving binlog
in ON state!). This leads to the reported assertion.
Fixed by adding another check for wsrep provider before binlog
is enabled.
Added a test case.
Diffstat (limited to 'sql/wsrep_mysqld.h')
-rw-r--r-- | sql/wsrep_mysqld.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/sql/wsrep_mysqld.h b/sql/wsrep_mysqld.h index cbc3f4cf3d1..20d356a22a9 100644 --- a/sql/wsrep_mysqld.h +++ b/sql/wsrep_mysqld.h @@ -286,6 +286,9 @@ extern wsrep_seqno_t wsrep_locked_seqno; if (victim_thd) WSREP_LOG_CONFLICT_THD(victim_thd, "Victim thread"); \ } +#define WSREP_PROVIDER_EXISTS \ + (wsrep_provider && strncasecmp(wsrep_provider, WSREP_NONE, FN_REFLEN)) + /*! Synchronizes applier thread start with init thread */ extern void wsrep_sst_grab(); /*! Init thread waits for SST completion */ |