mirror of
https://github.com/codership/wsrep-lib.git
synced 2025-07-06 20:56:43 +03:00
codership/wsrep-lib#54 Service call to recover streaming appliers
Introduced server_service recover_streaming_appliers() interface call which will be called in total order whenever streaming appliers must be recovered. The call comes with two overloads, one which can be called from client context (e.g. after SST has been received) and the other from high priority context (e.g. view event handling). The client context overload should be eventually be deprecated once there is a mechanism to make provider signal that it has joined to the cluster and will start applying events.
This commit is contained in:
@ -130,6 +130,35 @@ namespace wsrep
|
||||
wsrep::high_priority_service* high_priority_service,
|
||||
const wsrep::view& view) = 0;
|
||||
|
||||
/**
|
||||
* Recover streaming appliers from the streaming log.
|
||||
* The implementation must scan through log of stored streaming
|
||||
* fragments and reconstruct the streaming applier service
|
||||
* objects.
|
||||
*
|
||||
* This is overload for calls which are done from client context,
|
||||
* e.g. after SST has been received.
|
||||
*
|
||||
* @param client_service Reference to client service object
|
||||
*/
|
||||
virtual void recover_streaming_appliers(
|
||||
wsrep::client_service& client_service) = 0;
|
||||
|
||||
/**
|
||||
* Recover streaming appliers from the streaming log.
|
||||
* The implementation must scan through log of stored streaming
|
||||
* fragments and reconstruct the streaming applier service
|
||||
* objects.
|
||||
*
|
||||
* This is overload for calls which are done from high priority
|
||||
* context, e.g. when handling cluster view change events.
|
||||
*
|
||||
* @param high_priority_service Reference to high priority service
|
||||
* object.
|
||||
*/
|
||||
virtual void recover_streaming_appliers(
|
||||
wsrep::high_priority_service& high_priority_service) = 0;
|
||||
|
||||
/**
|
||||
* Recover a cluster view change event.
|
||||
* The method takes own node ID.
|
||||
|
Reference in New Issue
Block a user