summaryrefslogtreecommitdiff
path: root/sql/wsrep_server_service.h
diff options
context:
space:
mode:
authorDaniele Sciascia <daniele.sciascia@galeracluster.com>2019-12-11 13:08:06 +0100
committerJan Lindström <jan.lindstrom@mariadb.com>2019-12-11 14:08:06 +0200
commit72a5a4f1d51aca36a8c87b845a7a8fb615a6ca74 (patch)
tree93a4e52bd9915da49cdb4993e773c0220501c7a2 /sql/wsrep_server_service.h
parent7c2c420b70b19cc02b5281127205e876f3919dad (diff)
downloadmariadb-git-72a5a4f1d51aca36a8c87b845a7a8fb615a6ca74.tar.gz
MDEV-20780 Fixes for failures on galera_sr_ddl_master (#1425)
Test galera_sr_ddl_master would sometimes fail due to leftover streaming replication fragments. Rollbacker thread would attempt to open streaming_log table to remove the fragments, but would fail in check_stack_overrun(). Ultimately the check_stack_overrun() failure was caused by rollbacker missing to switch the victim's THD thread stack to rollbacker's thread stack. Also in this patch: - Remove duplicate functionality in rollbacker helper functions, and extract rollbacker fragment removal into function wsrep_remove_streaming_fragments() - Reuse open_for_write() in wsrep_schema::remove_fragments - Partially revert changes to galera_sr_ddl_master test from commit 44a11a7c085f4f5a4042100df0828d54d596103d. Removed unnecessary wait condition and isolation level setting
Diffstat (limited to 'sql/wsrep_server_service.h')
-rw-r--r--sql/wsrep_server_service.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/sql/wsrep_server_service.h b/sql/wsrep_server_service.h
index 6336fe2c473..4017c9b2d58 100644
--- a/sql/wsrep_server_service.h
+++ b/sql/wsrep_server_service.h
@@ -87,4 +87,14 @@ class Wsrep_applier_service;
Wsrep_applier_service*
wsrep_create_streaming_applier(THD *orig_thd, const char *ctx);
+/**
+ Helper method to create new storage service.
+
+ @param orig_thd Original thd context to copy operation context from.
+ @param ctx Context string for debug logging.
+*/
+class Wsrep_storage_service;
+Wsrep_storage_service*
+wsrep_create_storage_service(THD *orig_thd, const char *ctx);
+
#endif /* WSREP_SERVER_SERVICE */