AHeise commented on a change in pull request #15294: URL: https://github.com/apache/flink/pull/15294#discussion_r602718485
########## File path: flink-runtime/src/main/java/org/apache/flink/runtime/checkpoint/PendingCheckpoint.java ########## @@ -400,32 +400,31 @@ public TaskAcknowledgeResult acknowledgeTask( int subtaskIndex = vertex.getParallelSubtaskIndex(); long ackTimestamp = System.currentTimeMillis(); - if (operatorSubtaskStates != null) { - for (OperatorIDPair operatorID : operatorIDs) { - - OperatorSubtaskState operatorSubtaskState = - operatorSubtaskStates.getSubtaskStateByOperatorID( - operatorID.getGeneratedOperatorID()); - - // if no real operatorSubtaskState was reported, we insert an empty state - if (operatorSubtaskState == null) { - operatorSubtaskState = OperatorSubtaskState.builder().build(); - } - - OperatorState operatorState = - operatorStates.get(operatorID.getGeneratedOperatorID()); - - if (operatorState == null) { - operatorState = - new OperatorState( - operatorID.getGeneratedOperatorID(), - vertex.getTotalNumberOfParallelSubtasks(), - vertex.getMaxParallelism()); - operatorStates.put(operatorID.getGeneratedOperatorID(), operatorState); - } - - operatorState.putState(subtaskIndex, operatorSubtaskState); Review comment: We can recover from them, but not rescale from UC checkpionts (which is fair since it's a major release). All this change is doing is to not omit operators without state in the checkpoint. This omitted state is currently created during recovery in the initialization step of `StateAssignmentOperation`. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org