summaryrefslogtreecommitdiff
path: root/sql/wsrep_server_service.h
diff options
context:
space:
mode:
authorDaniele Sciascia <daniele.sciascia@galeracluster.com>2020-01-14 06:33:02 +0100
committerJan Lindström <jan.lindstrom@mariadb.com>2020-01-14 07:33:02 +0200
commit2d4b6571ecf15a4382702d26df9439bc5a1005de (patch)
tree93e9913ca4610bd7e69ca23a59e10d3339bad4cb /sql/wsrep_server_service.h
parent983163209d026bfd979b4298053fcbdb373efa9d (diff)
downloadmariadb-git-2d4b6571ecf15a4382702d26df9439bc5a1005de.tar.gz
Wsrep position not updated in InnoDB after certification failures (#1432)
A certification failure followed by a clean shutdown would cause an inconsistency between the sequence number stored in innodb and the sequence number stored in provider. This happened both in the case of local certification failure, and in the case where dummy writeset is applied. The fix consists of: - updating wsrep position after dummy writeset is delivered in `Wsrep_high_priority_service::log_dummy_write_set()` - updating wsrep position while releasing commit order in wsrep-lib side Added two tests which stress the situation where a server is shutdown after a certification failure.
Diffstat (limited to 'sql/wsrep_server_service.h')
-rw-r--r--sql/wsrep_server_service.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/sql/wsrep_server_service.h b/sql/wsrep_server_service.h
index 4017c9b2d58..168e98206e3 100644
--- a/sql/wsrep_server_service.h
+++ b/sql/wsrep_server_service.h
@@ -61,6 +61,7 @@ public:
wsrep::view get_view(wsrep::client_service&, const wsrep::id& own_id);
wsrep::gtid get_position(wsrep::client_service&);
+ void set_position(wsrep::client_service&, const wsrep::gtid&);
void log_state_change(enum wsrep::server_state::state,
enum wsrep::server_state::state);