rkhachatryan commented on code in PR #20313:
URL: https://github.com/apache/flink/pull/20313#discussion_r933108302


##########
flink-runtime/src/main/java/org/apache/flink/runtime/state/SharedStateRegistryImpl.java:
##########
@@ -365,4 +401,19 @@ public String toString() {
             return "EmptyDiscardStateObject{" + stateHandleID + '}';
         }
     }
+
+    private boolean preventsDiscardingCreatedCheckpoint(SharedStateEntry 
entry) {
+        // explicitly set by the backend, e.g. private state is reused
+        if (entry.preventDiscardingCreatedCheckpoint
+                && 
restoredCheckpointSharingStrategies.containsKey(entry.createdByCheckpointID)) {
+            return true;
+        }
+        // with NO_SHARING strategy, shared state, if any, is bundled inside 
the checkpoint folder
+        // noinspection RedundantIfStatement
+        if (NO_SHARING == 
restoredCheckpointSharingStrategies.get(entry.createdByCheckpointID)) {

Review Comment:
   Yes, the behavior described in the comment for `NO_SHARING` is relevant only 
until recovery. 
   After the recovery, the state can be re-used.
   
   I don't see any issue with that though; preventing re-use after recovery 
would result in slower first checkpoint.



-- 
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.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to