Class ShadowManagedLedgerImpl
java.lang.Object
org.apache.bookkeeper.mledger.impl.ManagedLedgerImpl
org.apache.bookkeeper.mledger.impl.ShadowManagedLedgerImpl
- All Implemented Interfaces:
AsyncCallback.CreateCallback,ManagedLedger
Detailed design can be found in PIP-180.
-
Nested Class Summary
Nested classes/interfaces inherited from class org.apache.bookkeeper.mledger.impl.ManagedLedgerImpl
ManagedLedgerImpl.PositionBound, ManagedLedgerImpl.State -
Field Summary
Fields inherited from class org.apache.bookkeeper.mledger.impl.ManagedLedgerImpl
ADD_OP_COUNT_UPDATER, AsyncOperationTimeoutSeconds, bookKeeper, clock, config, currentLedger, currentLedgerEntries, currentLedgerSize, DEFAULT_LEDGER_DELETE_BACKOFF_TIME_SEC, DEFAULT_LEDGER_DELETE_RETRIES, digestType, executor, lastAddEntryTimeMs, lastLedgerCreatedTimestamp, ledgers, ledgersStat, managedLedgerInterceptor, mbean, mlOwnershipChecker, name, propertiesMap, state, STATE_UPDATER, store -
Constructor Summary
ConstructorsConstructorDescriptionShadowManagedLedgerImpl(ManagedLedgerFactoryImpl factory, BookKeeper bookKeeper, MetaStore store, ManagedLedgerConfig config, org.apache.bookkeeper.common.util.OrderedScheduler scheduledExecutor, String name, Supplier<CompletableFuture<Boolean>> mlOwnershipChecker) -
Method Summary
Modifier and TypeMethodDescriptionvoidasyncClose(AsyncCallbacks.CloseCallback callback, Object ctx) Close the ManagedLedger asynchronously.voidasyncTerminate(AsyncCallbacks.TerminateCallback callback, Object ctx) terminate is not allowed on shadow topic.protected voidinitializeBookKeeper(org.apache.bookkeeper.mledger.impl.ManagedLedgerImpl.ManagedLedgerInitializeLedgerCallback callback) protected voidinternalAsyncAddEntry(OpAddEntry addOperation) protected voidprotected voidupdateLedgersIdsComplete(LedgerHandle originalCurrentLedger) Methods inherited from class org.apache.bookkeeper.mledger.impl.ManagedLedgerImpl
activateCursor, addEntry, addEntry, addEntry, addEntry, addWaitingCursor, addWaitingEntryCallBack, afterFailedAddEntry, asyncAddEntry, asyncAddEntry, asyncAddEntry, asyncAddEntry, asyncAddEntry, asyncCreateLedger, asyncDelete, asyncDeleteCursor, asyncDeleteProperty, asyncFindPosition, asyncMigrate, asyncOffloadPrefix, asyncOpenCursor, asyncOpenCursor, asyncOpenCursor, asyncReadEntry, asyncReadEntry, asyncReadEntry, asyncSetProperties, asyncSetProperty, asyncTruncate, beforeAddEntry, checkAndCompleteLedgerOpTask, checkCursorsToCacheEntries, checkInactiveLedgerAndRollOver, close, createComplete, createManagedLedgerException, createManagedLedgerException, deactivateCursor, delete, deleteCursor, deleteProperty, doDeleteLedgers, getActiveCursors, getCacheSize, getClock, getConfig, getCurrentLedgerEntries, getCurrentLedgerSize, getCursors, getEarliestMessagePublishTimeInBacklog, getEarliestMessagePublishTimeOfPos, getEnsemblesAsync, getEntriesAddedCounter, getEstimatedBacklogSize, getEstimatedBacklogSize, getFirstPosition, getLastConfirmedEntry, getLastLedgerCreatedTimestamp, getLastLedgerCreationFailureTimestamp, getLastOffloadedFailureTimestamp, getLastOffloadedLedgerId, getLastOffloadedSuccessTimestamp, getLedgerInfo, getLedgerMetadata, getLedgersInfo, getLedgersInfoAsList, getManagedLedgerInfo, getManagedLedgerInterceptor, getManagedLedgerInternalStats, getName, getNextValidLedger, getNextValidPosition, getNextValidPositionInternal, getNumberOfActiveEntries, getNumberOfEntries, getOffloadedSize, getOptionalLedgerInfo, getPendingAddEntriesCount, getPositionAfterN, getPreviousPosition, getProperties, getSlowestConsumer, getState, getStats, getTheSlowestNonDurationReadPosition, getTotalSize, getValidPositionAfterSkippedEntries, getWaitingCursorsCount, handleBadVersion, hasActiveCursors, hasMoreEntries, initializeCursors, invalidateLedgerHandle, isCursorActive, isMigrated, isNoMessagesAfterPos, isReadOnly, isTerminated, isValidPosition, ledgerExists, maybeUpdateCursorBeforeTrimmingConsumedLedger, newNonDurableCursor, newNonDurableCursor, newNonDurableCursor, offloadPrefix, onCursorReadPositionUpdated, openCursor, openCursor, openCursor, readyToCreateNewLedger, removeWaitingCursor, rollCurrentLedgerIfFull, setConfig, setEntriesAddedCounter, setProperties, setProperty, skipNonRecoverableLedger, terminate, trimConsumedLedgersInBackground, trimConsumedLedgersInBackground
-
Constructor Details
-
ShadowManagedLedgerImpl
public ShadowManagedLedgerImpl(ManagedLedgerFactoryImpl factory, BookKeeper bookKeeper, MetaStore store, ManagedLedgerConfig config, org.apache.bookkeeper.common.util.OrderedScheduler scheduledExecutor, String name, Supplier<CompletableFuture<Boolean>> mlOwnershipChecker)
-
-
Method Details
-
initializeBookKeeper
protected void initializeBookKeeper(org.apache.bookkeeper.mledger.impl.ManagedLedgerImpl.ManagedLedgerInitializeLedgerCallback callback) - Overrides:
initializeBookKeeperin classManagedLedgerImpl
-
internalAsyncAddEntry
- Overrides:
internalAsyncAddEntryin classManagedLedgerImpl
-
asyncTerminate
terminate is not allowed on shadow topic.- Specified by:
asyncTerminatein interfaceManagedLedger- Overrides:
asyncTerminatein classManagedLedgerImpl- Parameters:
callback-ctx-
-
asyncClose
Description copied from interface:ManagedLedgerClose the ManagedLedger asynchronously.- Specified by:
asyncClosein interfaceManagedLedger- Overrides:
asyncClosein classManagedLedgerImpl- Parameters:
callback- callback objectctx- opaque context- See Also:
-
updateLedgersIdsComplete
- Overrides:
updateLedgersIdsCompletein classManagedLedgerImpl
-
updateLastLedgerCreatedTimeAndScheduleRolloverTask
protected void updateLastLedgerCreatedTimeAndScheduleRolloverTask()- Overrides:
updateLastLedgerCreatedTimeAndScheduleRolloverTaskin classManagedLedgerImpl
-