Base of all snapshots that are taken by
StateBackends and some other
components in tasks.
Each snapshot is composed of a collection of
StateObjects some of
which may be referenced by other checkpoints. The shared states will be
registered at the given
SharedStateRegistry when the handle is
received by the
org.apache.flink.runtime.checkpoint.CheckpointCoordinatorand will be discarded when the checkpoint is discarded.
The
SharedStateRegistry is responsible for the discarding of registered
shared states. Before their first registration through
#registerSharedStates(SharedStateRegistry), newly created shared state is still owned by
this handle and considered as private state until it is registered for the first time. Registration
transfers ownership to the
SharedStateRegistry.
The composite state handle should only delete all private states in the
StateObject#discardState() method, the
SharedStateRegistry is responsible for
deleting shared states after they were registered.