B - type of the builder this sub-builder was created fromS - type of the object saved to the state snapshotpublic final class SourceBuilder.FaultTolerant<B,S> extends Object
restoreSnapshotFn(com.hazelcast.function.BiConsumerEx<? super C, ? super java.util.List<S>>) after adding a createSnapshotFn.| Modifier and Type | Method and Description |
|---|---|
B |
restoreSnapshotFn(BiConsumerEx<? super C,? super List<S>> restoreSnapshotFn)
Sets the function that restores the source's state from a snapshot.
|
@Nonnull public B restoreSnapshotFn(@Nonnull BiConsumerEx<? super C,? super List<S>> restoreSnapshotFn)
When Jet is restarting a job after it was interrupted (failure or other
reasons), it first initializes your source as if starting a new job and
then passes the snapshot object (the one it got from your createSnapshotFn) to this function. Then it
starts calling fillBufferFn, which must resume emitting the
stream from the same item it was about to emit when the snapshot was
taken.
If your source is not distributed, the `List` in the second argument contains
exactly 1 element; it is safe to use `get(0)` on it. If your source
is distributed, the list will contain objects returned by createSnapshotFn in all parallel instances. This is why restoreSnapshotFn accepts a list of snapshot objects. It should
figure out which part of the snapshot data pertains to it and it can
do so as explained here.
restoreSnapshotFn - the function to restore the state into the
context. It must be stateless.Copyright © 2023 Hazelcast, Inc.. All rights reserved.