summaryrefslogtreecommitdiff
path: root/sql/wsrep_var.cc
diff options
context:
space:
mode:
authorSergei Golubchik <serg@mariadb.org>2018-03-28 17:06:27 +0200
committerSergei Golubchik <serg@mariadb.org>2018-03-28 17:31:57 +0200
commitb1818dccf772e0fd495502c6dfc1600853e007d0 (patch)
treed9c441c38681d634d50cf36021a3bf439b2e44ca /sql/wsrep_var.cc
parentc34602995894c9a04f4312484cfe6e45c43426e6 (diff)
parentaafb9d44d65e42df72af28c940e5b23b4bc3bd43 (diff)
downloadmariadb-git-b1818dccf772e0fd495502c6dfc1600853e007d0.tar.gz
Merge branch '10.2' into 10.3
Diffstat (limited to 'sql/wsrep_var.cc')
-rw-r--r--sql/wsrep_var.cc22
1 files changed, 22 insertions, 0 deletions
diff --git a/sql/wsrep_var.cc b/sql/wsrep_var.cc
index ffa969a811c..d94ac240b76 100644
--- a/sql/wsrep_var.cc
+++ b/sql/wsrep_var.cc
@@ -26,6 +26,7 @@
#include <cstdio>
#include <cstdlib>
+ulong wsrep_reject_queries;
static long wsrep_prev_slave_threads = wsrep_slave_threads;
@@ -413,6 +414,27 @@ void wsrep_provider_options_init(const char* value)
wsrep_provider_options = (value) ? my_strdup(value, MYF(0)) : NULL;
}
+bool wsrep_reject_queries_update(sys_var *self, THD* thd, enum_var_type type)
+{
+ switch (wsrep_reject_queries) {
+ case WSREP_REJECT_NONE:
+ WSREP_INFO("Allowing client queries due to manual setting");
+ break;
+ case WSREP_REJECT_ALL:
+ WSREP_INFO("Rejecting client queries due to manual setting");
+ break;
+ case WSREP_REJECT_ALL_KILL:
+ wsrep_close_client_connections(FALSE);
+ WSREP_INFO("Rejecting client queries and killing connections due to manual setting");
+ break;
+ default:
+ WSREP_INFO("Unknown value for wsrep_reject_queries: %lu",
+ wsrep_reject_queries);
+ return true;
+ }
+ return false;
+}
+
static int wsrep_cluster_address_verify (const char* cluster_address_str)
{
/* There is no predefined address format, it depends on provider. */