Reading the below two statements I conclude that 
CheckpointMark.finalizeCheckpoint() will be called in order, unless there is a 
failure.
What happens in a failure?
What happens to subsequent checkpoints in the case of a checkpoint failure?
How do I prevent event re-ordering in the case of a checkpoint failure?

There is no rewind method and I cannot find a way to tell the UnboundedReader 
to rewind.   If I look at the pubsub UnboundedSource it seems to try and deal 
with the condition where the finalize itself fails, but not a failure elsewhere 
in the Checkpointing.  The only time a rewind, nackAll() is called is when a 
new reader is created.  If I have an UnboundedSource that is capable of 
rewinding to the last valid checkpoint and replaying events, how could I 
indicate to it to do so in the case of a Checkpoint failure that occurs outside 
the UnboundedSource?

https://beam.apache.org/releases/javadoc/2.8.0/org/apache/beam/sdk/io/UnboundedSource.CheckpointMark.html<https://beam.apache.org/releases/javadoc/2.8.0/org/apache/beam/sdk/io/UnboundedSource.CheckpointMark.html>
"In the absence of failures, all checkpoints will be finalized and they will be 
finalized in the same order they were taken from the 
UnboundedSource.UnboundedReader<https://beam.apache.org/releases/javadoc/2.8.0/org/apache/beam/sdk/io/UnboundedSource.UnboundedReader.html>."
"It is possible for a checkpoint to be taken but this method never called. This 
method will never be called if the checkpoint could not be committed, and other 
failures may cause this method to never be called."

Reply via email to