public class DuplicatingCheckpointOutputStream extends CheckpointStateOutputStream
closeAndGetSecondaryHandle(). In contrast
to that, exceptions from interactions with the primary stream are immediately returned to the
user. This class is used to write state for local recovery as a local (secondary) copy of the
(primary) state snapshot that is written to a (slower but highly-available) remote filesystem.| 构造器和说明 |
|---|
DuplicatingCheckpointOutputStream(CheckpointStateOutputStream primaryOutputStream,
CheckpointStateOutputStream secondaryOutputStream) |
DuplicatingCheckpointOutputStream(CheckpointStateOutputStream primaryOutputStream,
CheckpointStateOutputStream secondaryOutputStream,
int bufferSize) |
| 限定符和类型 | 方法和说明 |
|---|---|
void |
close()
This method should close the stream, if has not been closed before.
|
StreamStateHandle |
closeAndGetHandle()
Closes the stream and gets a state handle that can create an input stream producing the data
written to this stream.
|
StreamStateHandle |
closeAndGetPrimaryHandle()
Returns the state handle from the
primaryOutputStream. |
StreamStateHandle |
closeAndGetSecondaryHandle()
Returns the state handle from the
secondaryOutputStream. |
void |
flush() |
long |
getPos() |
Exception |
getSecondaryStreamException() |
void |
sync() |
void |
write(byte[] b) |
void |
write(byte[] b,
int off,
int len) |
void |
write(int b) |
public DuplicatingCheckpointOutputStream(CheckpointStateOutputStream primaryOutputStream, CheckpointStateOutputStream secondaryOutputStream) throws IOException
IOExceptionpublic DuplicatingCheckpointOutputStream(CheckpointStateOutputStream primaryOutputStream, CheckpointStateOutputStream secondaryOutputStream, int bufferSize) throws IOException
IOExceptionpublic void write(int b)
throws IOException
write 在类中 OutputStreamIOExceptionpublic void write(byte[] b)
throws IOException
write 在类中 OutputStreamIOExceptionpublic void write(byte[] b,
int off,
int len)
throws IOException
write 在类中 OutputStreamIOExceptionpublic long getPos()
throws IOException
getPos 在类中 org.apache.flink.core.fs.FSDataOutputStreamIOExceptionpublic void flush()
throws IOException
flush 在接口中 Flushableflush 在类中 org.apache.flink.core.fs.FSDataOutputStreamIOExceptionpublic void sync()
throws IOException
sync 在类中 org.apache.flink.core.fs.FSDataOutputStreamIOExceptionpublic void close()
throws IOException
CheckpointStateOutputStreamThe above implies that this method is intended to be the "unsuccessful close", such as
when cancelling the stream writing, or when an exception occurs. Closing the stream for the
successful case must go through CheckpointStateOutputStream.closeAndGetHandle().
close 在接口中 Closeableclose 在接口中 AutoCloseableclose 在类中 CheckpointStateOutputStreamIOException - Thrown, if the stream cannot be closed.@Nullable public StreamStateHandle closeAndGetHandle() throws IOException
CheckpointStateOutputStreamThis closing must be called (also when the caller is not interested in the handle) to
successfully close the stream and retain the produced resource. In contrast, the CheckpointStateOutputStream.close() method removes the target resource when called.
closeAndGetHandle 在类中 CheckpointStateOutputStreamIOException - Thrown, if the stream cannot be closed.public StreamStateHandle closeAndGetPrimaryHandle() throws IOException
primaryOutputStream.IOExceptionpublic StreamStateHandle closeAndGetSecondaryHandle() throws IOException
secondaryOutputStream. Also reports suppressed
exceptions from earlier interactions with that stream.IOExceptionpublic Exception getSecondaryStreamException()
Copyright © 2014–2022 The Apache Software Foundation. All rights reserved.