summaryrefslogtreecommitdiff
path: root/sql/wsrep_var.cc
diff options
context:
space:
mode:
authorAlexey Yurchenko <ayurchen@galeracluster.com>2016-04-02 22:37:22 -0300
committerNirbhay Choubey <nirbhay@mariadb.com>2016-08-21 16:17:08 -0400
commitd45b58263ddf815aa04d4dbc9255ed1081e33bdb (patch)
treea39cca86f7ba93d8eb35f9514a648238503bd9a3 /sql/wsrep_var.cc
parent4582a4bccf406776702a3f866a8f21aa4daaaff9 (diff)
downloadmariadb-git-d45b58263ddf815aa04d4dbc9255ed1081e33bdb.tar.gz
MW-259 - moved wsrep desync/resync calls from wsrep_desync_update() to wsrep_desync_check() method which does not hold the lock and is arguably a more fitting place to change provider state - before changing the actual variable value.
Diffstat (limited to 'sql/wsrep_var.cc')
-rw-r--r--sql/wsrep_var.cc13
1 files changed, 7 insertions, 6 deletions
diff --git a/sql/wsrep_var.cc b/sql/wsrep_var.cc
index 44d17e3e78a..2f13ffd6747 100644
--- a/sql/wsrep_var.cc
+++ b/sql/wsrep_var.cc
@@ -529,14 +529,10 @@ bool wsrep_desync_check (sys_var *self, THD* thd, set_var* var)
ER_WRONG_VALUE_FOR_VAR,
"'wsrep_desync' is already OFF.");
}
+ return false;
}
- return 0;
-}
-
-bool wsrep_desync_update (sys_var *self, THD* thd, enum_var_type type)
-{
wsrep_status_t ret(WSREP_WARNING);
- if (wsrep_desync) {
+ if (new_wsrep_desync) {
ret = wsrep->desync (wsrep);
if (ret != WSREP_OK) {
WSREP_WARN ("SET desync failed %d for schema: %s, query: %s", ret,
@@ -558,6 +554,11 @@ bool wsrep_desync_update (sys_var *self, THD* thd, enum_var_type type)
return false;
}
+bool wsrep_desync_update (sys_var *self, THD* thd, enum_var_type type)
+{
+ return false;
+}
+
bool wsrep_max_ws_size_update (sys_var *self, THD *thd, enum_var_type)
{
char max_ws_size_opt[128];