public class MultiSourceSingleFileReliableAsyncGroupBacklog extends AbstractMultiSourceSingleFileGroupBacklog implements IReplicationReliableAsyncGroupBacklog, IPacketFilteredHandler
AbstractSingleFileGroupBacklog.CaluclateMinUnconfirmedKeyProcedureIReplicationReliableAsyncGroupBacklog.KeeperMemberState| Modifier and Type | Field and Description |
|---|---|
protected Map<String,Long> |
_ongoingReliableAsyncHandshakeCompletion |
_defaultFilteredHandler, _logger, _loggerReplica, _outOfSyncDueToDeletionTargets, _rwLock| Constructor and Description |
|---|
MultiSourceSingleFileReliableAsyncGroupBacklog(DynamicSourceGroupConfigHolder groupConfig,
String name,
IReplicationPacketDataProducer<?> dataProducer) |
addGenericOperationPacket, addSingleOperationPacket, addTransactionOperationPacket, createBacklogOverflowPacket, createConfirmationMap, createNewConfirmationHolder, deleteBatchFromBacklog, fromWireForm, getConfirmed, getFirstRequiredKeyUnsafe, getHandshakeRequest, getIdleStateData, getLastConfirmedKeyUnsafe, getMemberUnconfirmedKey, getState, onBeginSynchronization, processHandshakeResponse, processIdleStateDataResult, processResult, processResult, replaceWithDiscarded, setPendingError, supportDiscardMergeappendConfirmationStateString, beginSynchronizing, beginSynchronizing, checkSynchronizingDone, cleanPendingErrorStateIfNeeded, clearConfirmedPackets, clearReplicated, close, ensureLimit, filterPacketForSynchronizing, freeWriteLock, getAllConfirmationHoldersUnsafe, getAllConfirmations, getAllConfirmations, getBacklogFile, getConfirmationHolderUnsafe, getCurrentMarker, getDataProducer, getFirstKeyInBacklogInternal, getGroupConfigSnapshot, getGroupName, getLastInsertedKeyToBacklogUnsafe, getLogPrefix, getMarker, getMembersToValidateAgainst, getName, getNextKeyUnsafe, getPackets, getPacketsUnsafe, getPacketsWithFullSerializedContent, getSpecificPacket, getSpecificPackets, getStatistics, getUnconfirmedMarker, handlePendingErrorBatchPackets, handlePendingErrorSinglePacket, hasExistingMember, insertReplicationOrderedPacketToBacklog, isBacklogDroppedEntirely, isMarkerReached, isSynchronizing, logPendingErrorResolved, makeMemberConfirmedOnAll, memberAdded, memberRemoved, monitor, registerWith, removeSynchronizingState, setGroupHistory, setNextKeyUnsafe, setPendingError, setPendingError, setStateListener, shouldInsertPacket, size, size, stopSynchronization, synchronizationCopyStageDone, synchronizationDataGenerated, synchronizationDone, takeNextKeyUnsafe, toLogMessage, toString, updateBacklogLimitations, validateIntegrity, validateReliableAsyncUpdateTargetsMatch, writeLockclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitbeginSynchronizing, beginSynchronizing, clearReplicated, close, freeWriteLock, fromWireForm, getConfirmed, getCurrentMarker, getDataProducer, getHandshakeRequest, getIdleStateData, getMarker, getPackets, getSpecificPacket, getState, getStatistics, getUnconfirmedMarker, makeMemberConfirmedOnAll, monitor, processHandshakeResponse, processIdleStateDataResult, processResult, processResult, registerWith, replaceWithDiscarded, setGroupHistory, setPendingError, setPendingError, setPendingError, setStateListener, size, size, stopSynchronization, supportDiscardMerge, synchronizationCopyStageDone, synchronizationDataGenerated, synchronizationDone, toLogMessage, writeLockmemberAdded, memberRemovedpublic MultiSourceSingleFileReliableAsyncGroupBacklog(DynamicSourceGroupConfigHolder groupConfig, String name, IReplicationPacketDataProducer<?> dataProducer)
public void add(ReliableAsyncReplicationGroupOutContext groupContext, IEntryHolder entryHolder, ReplicationSingleOperationType operationType)
add in interface IReplicationReliableAsyncGroupBacklogpublic void addGeneric(ReliableAsyncReplicationGroupOutContext groupContext, Object operationData, ReplicationSingleOperationType operationType)
addGeneric in interface IReplicationReliableAsyncGroupBacklogpublic void addTransaction(ReliableAsyncReplicationGroupOutContext groupContext, ServerTransaction transaction, ArrayList<IEntryHolder> lockedEntries, ReplicationMultipleOperationType operationType)
addTransaction in interface IReplicationReliableAsyncGroupBacklogpublic void reliableAsyncSourceAdd(String sourceMemberName, IReplicationOrderedPacket packet)
reliableAsyncSourceAdd in interface IReplicationReliableAsyncGroupBacklogpublic void reliableAsyncSourceKeep(String sourceMemberName, IReplicationOrderedPacket packet)
IReplicationReliableAsyncGroupBacklogreliableAsyncSourceKeep in interface IReplicationReliableAsyncGroupBacklogpublic MultiSourceSingleFileReliableAsyncState getEntireReliableAsyncState()
getEntireReliableAsyncState in interface IReplicationReliableAsyncGroupBacklogpublic void updateReliableAsyncState(IReliableAsyncState reliableAsyncState, String sourceMemberName) throws NoSuchReplicationMemberException, MissingReliableAsyncTargetStateException
updateReliableAsyncState in interface IReplicationReliableAsyncGroupBacklogNoSuchReplicationMemberExceptionMissingReliableAsyncTargetStateExceptionpublic List<IReplicationOrderedPacket> getReliableAsyncPackets(String memberName, int maxSize, IReplicationReliableAsyncGroupBacklog.KeeperMemberState[] keeperMembersState, IReplicationChannelDataFilter dataFilter, PlatformLogicalVersion targetMemberVersion, Logger logger)
IReplicationReliableAsyncGroupBackloggetReliableAsyncPackets in interface IReplicationReliableAsyncGroupBacklogkeeperMembersState - the state of the keeper sync memberpublic void afterHandshake(IProcessLogHandshakeResponse handshakeResponse)
IReplicationReliableAsyncGroupBacklogafterHandshake in interface IReplicationReliableAsyncGroupBacklogpublic String dumpState()
dumpState in interface IReplicationGroupBacklogdumpState in class AbstractMultiSourceSingleFileGroupBacklogprotected MultiSourceSingleFileBacklogHandshakeRequest getHandshakeRequestImpl(String memberName, MultiSourceSingleFileBacklogHandshakeRequest handshakeRequest)
getHandshakeRequestImpl in class AbstractMultiSourceSingleFileGroupBacklogprotected IHandshakeContext getHandshakeContext(String memberName, IBacklogHandshakeRequest request, PlatformLogicalVersion targetLogicalVersion, GlobalOrderProcessLogHandshakeResponse typedResponse, long lastProcessedKey)
getHandshakeContext in class AbstractMultiSourceSingleFileGroupBacklogpublic MultiSourceSingleFileReliableAsyncState getReliableAsyncState(String targetMemberLookupName)
getReliableAsyncState in interface IReplicationReliableAsyncGroupBacklogprotected MultiSourceSingleFileReliableAsyncState buildReliableAsyncState(Set<Map.Entry<String,MultiSourceSingleFileConfirmationHolder>> asyncTargetsConfirmations)
public IReplicationOrderedPacket packetFiltered(IReplicationOrderedPacket beforeFilter, IReplicationOrderedPacket afterFilter, IReplicationGroupBacklog groupBacklog, String targetMemberName)
packetFiltered in interface IPacketFilteredHandlerprotected IPacketFilteredHandler getFilteredHandler()
public IHandshakeIteration getNextHandshakeIteration(String memberName, IHandshakeContext handshakeContext)
getNextHandshakeIteration in interface IReplicationGroupBackloggetNextHandshakeIteration in class AbstractSingleFileGroupBacklog<IReplicationOrderedPacket,MultiSourceSingleFileConfirmationHolder>protected long getMinimumUnconfirmedKeyUnsafe()
protected long getInitialMaxAllowedDeleteUpTo()
public boolean mergeWithDiscarded(IReplicationOrderedPacket previousDiscardedPacket, IReplicationOrderedPacket mergedPacket, String memberName)
IReplicationGroupBacklogmergeWithDiscarded in interface IReplicationGroupBacklogmergeWithDiscarded in class AbstractMultiSourceSingleFileGroupBacklogpreviousDiscardedPacket - 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 - TODOCopyright © GigaSpaces.