Interface ShutdownSynchronizer

All Known Implementing Classes:
MultimasterReplication

public interface ShutdownSynchronizer
Synchronizes the shutdown of DS and RS ensuring that the offline message triggered by the DS is forwarded to all remote RS.
  • Method Details

    • notifyReplicaOfflineMsgHasBeenSentByDS

      void notifyReplicaOfflineMsgHasBeenSentByDS(Dn baseDn)
      Notifies an offline message has been sent by the DS for the provided domain.
      Parameters:
      baseDn - the domain for which the offline message has been sent.
    • clearReplicaOfflineMsgNotifications

      void clearReplicaOfflineMsgNotifications(Dn baseDn)
      Clear the notifications for the provided domain. In other words, reset the counter of offline messages to forward to remote replication servers to zero.

      If the synchronization has failed or must be aborted for any reason, this method allows to reset the synchronizer to a clean state. For example, if a ReplicaOfflineMsg is ignored due to a DS in a bad data status, the shutdown for the peer DS should not wait for the forwarding of the message to other replication servers.

      Parameters:
      baseDn - the domain for which the notifications must be cleared
    • notifyReplicaOfflineMsgHasBeenForwardedToRS

      void notifyReplicaOfflineMsgHasBeenForwardedToRS(Dn baseDn)
      Notifies the offline message for the provided domain has been forwarded to a RS.
      Parameters:
      baseDn - the domain for which the offline message has been forwarded.
    • waitForReplicaOfflineMessageToBeForwardedToRS

      void waitForReplicaOfflineMessageToBeForwardedToRS(Dn baseDn)
      Waits until a Replication Server can proceed with shutdown.

      The shutdown can be performed only when the offline message have been forwarded to all remote replications servers, or if the timeout has been reached.

      Parameters:
      baseDn - the domain for which the offline message should be forwarded.