Package org.apache.flink.core.fs
Class CommitterFromPersistRecoverableFsDataOutputStream<RESUME_RECOVERABLE extends RecoverableWriter.ResumeRecoverable>
- java.lang.Object
-
- java.io.OutputStream
-
- org.apache.flink.core.fs.FSDataOutputStream
-
- org.apache.flink.core.fs.RecoverableFsDataOutputStream
-
- org.apache.flink.core.fs.CommitterFromPersistRecoverableFsDataOutputStream<RESUME_RECOVERABLE>
-
- Type Parameters:
RESUME_RECOVERABLE- return type of #persist()
- All Implemented Interfaces:
Closeable,Flushable,AutoCloseable
- Direct Known Subclasses:
LocalRecoverableFsDataOutputStream
public abstract class CommitterFromPersistRecoverableFsDataOutputStream<RESUME_RECOVERABLE extends RecoverableWriter.ResumeRecoverable> extends RecoverableFsDataOutputStream
RecoverableFsDataOutputStreamwith fixed implementation ofcloseForCommit()that is based on usingpersist()to ensure durability and creates theRecoverableFsDataOutputStream.Committerfrom the correspondingRecoverableWriter.ResumeRecoverable.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.apache.flink.core.fs.RecoverableFsDataOutputStream
RecoverableFsDataOutputStream.Committer
-
-
Constructor Summary
Constructors Constructor Description CommitterFromPersistRecoverableFsDataOutputStream()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description RecoverableFsDataOutputStream.CommittercloseForCommit()Closes the stream, ensuring persistence of all data (similar toFSDataOutputStream.sync()).protected abstract RecoverableFsDataOutputStream.CommittercreateCommitterFromResumeRecoverable(RESUME_RECOVERABLE recoverable)abstract RESUME_RECOVERABLEpersist()Ensures all data so far is persistent (similar toFSDataOutputStream.sync()) and returns a handle to recover the stream at the current position.-
Methods inherited from class org.apache.flink.core.fs.RecoverableFsDataOutputStream
close
-
Methods inherited from class org.apache.flink.core.fs.FSDataOutputStream
flush, getPos, sync
-
Methods inherited from class java.io.OutputStream
nullOutputStream, write, write, write
-
-
-
-
Method Detail
-
persist
public abstract RESUME_RECOVERABLE persist() throws IOException
Description copied from class:RecoverableFsDataOutputStreamEnsures all data so far is persistent (similar toFSDataOutputStream.sync()) and returns a handle to recover the stream at the current position.- Specified by:
persistin classRecoverableFsDataOutputStream- Throws:
IOException- See Also:
RecoverableFsDataOutputStream.persist()
-
createCommitterFromResumeRecoverable
protected abstract RecoverableFsDataOutputStream.Committer createCommitterFromResumeRecoverable(RESUME_RECOVERABLE recoverable)
- Parameters:
recoverable- a resume recoverable to create the committer from. Typically the parameter is the return value ofpersist().- Returns:
- the committer created from recoverable.
- See Also:
RecoverableFsDataOutputStream.closeForCommit()
-
closeForCommit
public final RecoverableFsDataOutputStream.Committer closeForCommit() throws IOException
Description copied from class:RecoverableFsDataOutputStreamCloses the stream, ensuring persistence of all data (similar toFSDataOutputStream.sync()). This returns a Committer that can be used to publish (make visible) the file that the stream was writing to.- Specified by:
closeForCommitin classRecoverableFsDataOutputStream- Throws:
IOException- See Also:
RecoverableFsDataOutputStream.closeForCommit()
-
-