public class WithinCheckpointFileMergingSnapshotManager extends FileMergingSnapshotManagerBase
FileMergingSnapshotManager that merging files within a checkpoint.FileMergingSnapshotManagerBase.DirectoryHandleWithReferenceTrackFileMergingSnapshotManager.SpaceStat, FileMergingSnapshotManager.SubtaskKeycheckpointDir, filePoolType, fs, ioExecutor, lock, managedExclusiveStateDir, managedExclusiveStateDirHandle, maxPhysicalFileSize, maxSpaceAmplification, metricGroup, physicalFileDeleter, sharedStateDir, shouldSyncAfterClosingLogicalFile, spaceStat, taskOwnedStateDir, uploadedStates, writeBufferSize| Constructor and Description |
|---|
WithinCheckpointFileMergingSnapshotManager(String id,
long maxFileSize,
PhysicalFilePool.Type filePoolType,
float maxSpaceAmplification,
Executor ioExecutor,
org.apache.flink.metrics.MetricGroup metricGroup) |
| Modifier and Type | Method and Description |
|---|---|
void |
close() |
protected void |
discardCheckpoint(long checkpointId)
The callback which will be triggered when all subtasks discarded (aborted or subsumed).
|
protected PhysicalFile |
getOrCreatePhysicalFileForCheckpoint(FileMergingSnapshotManager.SubtaskKey subtaskKey,
long checkpointId,
CheckpointedStateScope scope)
Get a reused physical file or create one.
|
void |
notifyCheckpointAborted(FileMergingSnapshotManager.SubtaskKey subtaskKey,
long checkpointId)
This method is called as a notification once a distributed checkpoint has been aborted.
|
void |
notifyCheckpointComplete(FileMergingSnapshotManager.SubtaskKey subtaskKey,
long checkpointId)
Notifies the manager that the checkpoint with the given
checkpointId completed and
was committed. |
protected void |
returnPhysicalFileForNextReuse(FileMergingSnapshotManager.SubtaskKey subtaskKey,
long checkpointId,
PhysicalFile physicalFile)
Try to return an existing physical file to the manager for next reuse.
|
couldReusePreviousStateHandle, createCheckpointStateOutputStream, createLogicalFile, createPhysicalFile, createPhysicalPool, deletePhysicalFile, discardSingleLogicalFile, generatePhysicalFilePath, getId, getLogicalFile, getManagedDir, getManagedDirStateHandle, initFileSystem, notifyCheckpointStart, notifyCheckpointSubsumed, registerSubtaskForSharedStates, restoreStateHandles, reusePreviousStateHandle, unregisterSubtaskclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitisFileMergingHandlepublic WithinCheckpointFileMergingSnapshotManager(String id, long maxFileSize, PhysicalFilePool.Type filePoolType, float maxSpaceAmplification, Executor ioExecutor, org.apache.flink.metrics.MetricGroup metricGroup)
public void notifyCheckpointComplete(FileMergingSnapshotManager.SubtaskKey subtaskKey, long checkpointId) throws Exception
FileMergingSnapshotManagercheckpointId completed and
was committed.notifyCheckpointComplete in interface FileMergingSnapshotManagernotifyCheckpointComplete in class FileMergingSnapshotManagerBasesubtaskKey - the subtask key identifying the subtask.checkpointId - The ID of the checkpoint that has been completed.Exception - thrown if anything goes wrong with the listener.public void notifyCheckpointAborted(FileMergingSnapshotManager.SubtaskKey subtaskKey, long checkpointId) throws Exception
FileMergingSnapshotManagernotifyCheckpointAborted in interface FileMergingSnapshotManagernotifyCheckpointAborted in class FileMergingSnapshotManagerBasesubtaskKey - the subtask key identifying the subtask.checkpointId - The ID of the checkpoint that has been completed.Exception - thrown if anything goes wrong with the listener.@Nonnull protected PhysicalFile getOrCreatePhysicalFileForCheckpoint(FileMergingSnapshotManager.SubtaskKey subtaskKey, long checkpointId, CheckpointedStateScope scope) throws IOException
FileMergingSnapshotManagerBaseBasic logic of file reusing: whenever a physical file is needed, this method is called
with necessary information provided for acquiring a file. The file will not be reused until
it is written and returned to the reused pool by calling FileMergingSnapshotManagerBase.returnPhysicalFileForNextReuse(org.apache.flink.runtime.checkpoint.filemerging.FileMergingSnapshotManager.SubtaskKey, long, org.apache.flink.runtime.checkpoint.filemerging.PhysicalFile).
getOrCreatePhysicalFileForCheckpoint in class FileMergingSnapshotManagerBasesubtaskKey - the subtask key for the callercheckpointId - the checkpoint idscope - checkpoint scopeIOException - thrown if anything goes wrong with file system.protected void returnPhysicalFileForNextReuse(FileMergingSnapshotManager.SubtaskKey subtaskKey, long checkpointId, PhysicalFile physicalFile) throws IOException
FileMergingSnapshotManagerBaseBasic logic of file reusing, see FileMergingSnapshotManagerBase.getOrCreatePhysicalFileForCheckpoint(org.apache.flink.runtime.checkpoint.filemerging.FileMergingSnapshotManager.SubtaskKey, long, org.apache.flink.runtime.state.CheckpointedStateScope).
returnPhysicalFileForNextReuse in class FileMergingSnapshotManagerBasesubtaskKey - the subtask key for the callercheckpointId - in which checkpoint this physical file is requested.physicalFile - the returning checkpointIOException - thrown if anything goes wrong with file system.#getOrCreatePhysicalFileForCheckpoint(SubtaskKey, long, CheckpointedStateScope)protected void discardCheckpoint(long checkpointId)
throws IOException
FileMergingSnapshotManagerBasediscardCheckpoint in class FileMergingSnapshotManagerBasecheckpointId - the discarded checkpoint id.IOException - if anything goes wrong with file system.public void close()
throws IOException
close in interface Closeableclose in interface AutoCloseableclose in class FileMergingSnapshotManagerBaseIOExceptionCopyright © 2014–2025 The Apache Software Foundation. All rights reserved.