Details
-
Bug
-
Status: Closed
-
Minor
-
Resolution: Not A Problem
-
None
-
None
-
None
-
None
Description
In performCheckpoint():
AsyncCheckpointRunnable asyncCheckpointRunnable = new AsyncCheckpointRunnable( "checkpoint-" + checkpointId + "-" + timestamp, this, cancelables, chainedStateHandles, keyGroupsStateHandleFuture, checkpointId, bytesBufferedAlignment, alignmentDurationNanos, syncDurationMillis, endOfSyncPart); synchronized (cancelables) { cancelables.add(asyncCheckpointRunnable); }
Construction of AsyncCheckpointRunnable should be put under the synchronized block of cancelables.