[ https://issues.apache.org/jira/browse/FLINK-4482?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15455163#comment-15455163 ]
ASF GitHub Bot commented on FLINK-4482: --------------------------------------- Github user StephanEwen commented on a diff in the pull request: https://github.com/apache/flink/pull/2421#discussion_r77159592 --- Diff: flink-runtime/src/main/java/org/apache/flink/runtime/checkpoint/CheckpointCoordinator.java --- @@ -135,7 +136,7 @@ private JobStatusListener jobStatusListener; /** The number of consecutive failed trigger attempts */ - private int numUnsuccessfulCheckpointsTriggers; + private AtomicInteger numUnsuccessfulCheckpointsTriggers = new AtomicInteger(0); --- End diff -- This should be final > numUnsuccessfulCheckpointsTriggers is accessed without holding triggerLock > -------------------------------------------------------------------------- > > Key: FLINK-4482 > URL: https://issues.apache.org/jira/browse/FLINK-4482 > Project: Flink > Issue Type: Bug > Reporter: Ted Yu > Priority: Minor > > In CheckpointCoordinator#stopCheckpointScheduler() : > {code} > synchronized (lock) { > ... > numUnsuccessfulCheckpointsTriggers = 0; > {code} > triggerLock is not held in the above operation. > See comment for triggerLock earlier in triggerCheckpoint(): > {code} > // we lock with a special lock to make sure that trigger requests do not > overtake each other. > // this is not done with the coordinator-wide lock, because the > 'checkpointIdCounter' > // may issue blocking operations. Using a different lock than teh > coordinator-wide lock, > // we avoid blocking the processing of 'acknowledge/decline' messages > during that time. > synchronized (triggerLock) { > {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)