public class GlobalOrderReliableAsyncGroupBacklog extends AbstractGlobalOrderGroupBacklog implements IReplicationReliableAsyncGroupBacklog, IPacketFilteredHandler
AbstractSingleFileGroupBacklog.CaluclateMinUnconfirmedKeyProcedure, AbstractSingleFileGroupBacklog.CompactionEnabledCaluclateMinUnconfirmedKeyProcedure, AbstractSingleFileGroupBacklog.ICaluclateMinUnconfirmedKey
IReplicationReliableAsyncGroupBacklog.KeeperMemberState
_defaultFilteredHandler, _logger, _loggerReplica, _outOfSyncDueToDeletionTargets, _replicationLogger, _rwLock
Constructor and Description |
---|
GlobalOrderReliableAsyncGroupBacklog(DynamicSourceGroupConfigHolder groupConfig,
String name,
IReplicationPacketDataProducer<?> dataProducer) |
addGenericOperationPacket, addSingleOperationPacket, addTransactionOperationPacket, createBacklogOverflowPacket, createConfirmationMap, createNewConfirmationHolder, deleteBatchFromBacklog, fromWireForm, getConfirmed, getIdleStateData, getLastConfirmationInternal, getLastConfirmedKeyUnsafe, getMemberUnconfirmedKey, getState, onBeginSynchronization, processIdleStateDataResult, processResult, processResult, replaceWithDiscarded, supportDiscardMerge
appendConfirmationStateString, beginSynchronizing, beginSynchronizing, checkSynchronizingDone, cleanPendingErrorStateIfNeeded, clearConfirmedPackets, clearReplicated, close, decreaseMirrorDiscardedCount, decreaseWeight, decreaseWeightToAllMembersFromOldestPacket, ensureLimit, filterPacketForSynchronizing, flushRedoLogToStorage, freeWriteLock, getAllConfirmationHoldersUnsafe, getAllConfirmations, getAllConfirmations, getBacklogFile, getConfirmationHolderUnsafe, getCurrentMarker, getDataProducer, getFirstKeyInBacklogInternal, getFirstRequiredKeyUnsafe, getGroupConfigSnapshot, getGroupName, getLastInsertedKeyToBacklogUnsafe, getLogPrefix, getMarker, getMembersToValidateAgainst, getName, getNextKeyUnsafe, getPackets, getPacketsUnsafe, getPacketsWithFullSerializedContent, getSpecificPacket, getSpecificPackets, getStatistics, getUnconfirmedMarker, getWeight, getWeight, getWeightUnsafe, handlePendingErrorBatchPackets, handlePendingErrorSinglePacket, hasExistingMember, hasMirror, increaseAllMembersWeight, increaseMirrorDiscardedCount, increaseWeight, insertReplicationOrderedPacketToBacklog, isBacklogDroppedEntirely, isMarkerReached, isSynchronizing, logPendingErrorResolved, makeMemberConfirmedOnAll, memberAdded, memberRemoved, monitor, performCompaction, performCompactionUnsafe, printRedoLog, registerWith, removeSynchronizingState, setGroupHistory, setNextKeyUnsafe, setPacketWeight, setPendingError, setPendingError, setPendingError, setStateListener, shouldInsertPacket, size, size, stopSynchronization, synchronizationCopyStageDone, synchronizationDataGenerated, synchronizationDone, takeNextKeyUnsafe, toLogMessage, toString, updateBacklogLimitations, updateMirrorWeightAfterCompaction, validateIntegrity, validateReliableAsyncUpdateTargetsMatch, writeLock
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
beginSynchronizing, beginSynchronizing, clearReplicated, close, decreaseWeight, flushRedoLogToStorage, freeWriteLock, fromWireForm, getConfirmed, getCurrentMarker, getDataProducer, getIdleStateData, getMarker, getPackets, getSpecificPacket, getState, getStatistics, getUnconfirmedMarker, getWeight, getWeight, increaseWeight, makeMemberConfirmedOnAll, monitor, performCompaction, processIdleStateDataResult, processResult, processResult, registerWith, replaceWithDiscarded, setGroupHistory, setPendingError, setPendingError, setPendingError, setStateListener, size, size, stopSynchronization, supportDiscardMerge, synchronizationCopyStageDone, synchronizationDataGenerated, synchronizationDone, toLogMessage, writeLock
memberAdded, memberRemoved
public GlobalOrderReliableAsyncGroupBacklog(DynamicSourceGroupConfigHolder groupConfig, String name, IReplicationPacketDataProducer<?> dataProducer)
public void reliableAsyncSourceKeep(String sourceMemberName, IReplicationOrderedPacket packet)
IReplicationReliableAsyncGroupBacklog
reliableAsyncSourceKeep
in interface IReplicationReliableAsyncGroupBacklog
public void reliableAsyncSourceAdd(String sourceMemberName, IReplicationOrderedPacket packet)
reliableAsyncSourceAdd
in interface IReplicationReliableAsyncGroupBacklog
public void add(ReliableAsyncReplicationGroupOutContext groupContext, IEntryHolder entryHolder, ReplicationSingleOperationType operationType)
add
in interface IReplicationReliableAsyncGroupBacklog
public void addGeneric(ReliableAsyncReplicationGroupOutContext groupContext, Object operationData, ReplicationSingleOperationType operationType)
addGeneric
in interface IReplicationReliableAsyncGroupBacklog
public void addTransaction(ReliableAsyncReplicationGroupOutContext groupContext, ServerTransaction transaction, ArrayList<IEntryHolder> lockedEntries, ReplicationMultipleOperationType operationType)
addTransaction
in interface IReplicationReliableAsyncGroupBacklog
public GlobalOrderReliableAsyncState getEntireReliableAsyncState()
getEntireReliableAsyncState
in interface IReplicationReliableAsyncGroupBacklog
public GlobalOrderReliableAsyncState getReliableAsyncState(String targetMemberName)
getReliableAsyncState
in interface IReplicationReliableAsyncGroupBacklog
public void updateReliableAsyncState(IReliableAsyncState reliableAsyncState, String sourceMemberName) throws NoSuchReplicationMemberException, MissingReliableAsyncTargetStateException
updateReliableAsyncState
in interface IReplicationReliableAsyncGroupBacklog
NoSuchReplicationMemberException
MissingReliableAsyncTargetStateException
public void afterHandshake(IProcessLogHandshakeResponse handshakeResponse)
IReplicationReliableAsyncGroupBacklog
afterHandshake
in interface IReplicationReliableAsyncGroupBacklog
public List<IReplicationOrderedPacket> getReliableAsyncPackets(String memberName, int maxSize, IReplicationReliableAsyncGroupBacklog.KeeperMemberState[] keeperMembersState, IReplicationChannelDataFilter dataFilter, PlatformLogicalVersion targetMemberVersion, org.slf4j.Logger logger)
IReplicationReliableAsyncGroupBacklog
getReliableAsyncPackets
in interface IReplicationReliableAsyncGroupBacklog
keeperMembersState
- the state of the keeper sync memberpublic IHandshakeContext processHandshakeResponse(String memberName, IBacklogHandshakeRequest request, IProcessLogHandshakeResponse response, PlatformLogicalVersion targetLogicalVersion, Object customBacklogMetadata)
processHandshakeResponse
in interface IReplicationGroupBacklog
processHandshakeResponse
in class AbstractGlobalOrderGroupBacklog
protected long getMinimumUnconfirmedKeyUnsafe()
protected long getInitialMaxAllowedDeleteUpTo()
public GlobalOrderBacklogHandshakeRequest getHandshakeRequest(String memberName, Object customBacklogMetadata)
getHandshakeRequest
in interface IReplicationGroupBacklog
getHandshakeRequest
in class AbstractGlobalOrderGroupBacklog
public IHandshakeIteration getNextHandshakeIteration(String memberName, IHandshakeContext handshakeContext)
getNextHandshakeIteration
in interface IReplicationGroupBacklog
getNextHandshakeIteration
in class AbstractSingleFileGroupBacklog<IReplicationOrderedPacket,GlobalOrderConfirmationHolder>
protected IPacketFilteredHandler getFilteredHandler()
public IReplicationOrderedPacket packetFiltered(IReplicationOrderedPacket beforeFilter, IReplicationOrderedPacket afterFilter, IReplicationGroupBacklog groupBacklog, String targetMemberName)
packetFiltered
in interface IPacketFilteredHandler
public boolean mergeWithDiscarded(IReplicationOrderedPacket previousDiscardedPacket, IReplicationOrderedPacket mergedPacket, String memberName)
IReplicationGroupBacklog
mergeWithDiscarded
in interface IReplicationGroupBacklog
mergeWithDiscarded
in class AbstractGlobalOrderGroupBacklog
previousDiscardedPacket
- the already existing discarded packet which is a result IReplicationGroupBacklog.replaceWithDiscarded(IReplicationOrderedPacket, boolean)
mergedPacket
- the new packet that needs to be discarded and merged into the
existing discarded packetmemberName
- TODOpublic String dumpState()
dumpState
in interface IReplicationGroupBacklog
dumpState
in class AbstractGlobalOrderGroupBacklog
Copyright © GigaSpaces.