[
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)