mxm commented on a change in pull request #12759:
URL: https://github.com/apache/beam/pull/12759#discussion_r484955004



##########
File path: 
runners/flink/src/main/java/org/apache/beam/runners/flink/translation/wrappers/streaming/state/FlinkStateInternals.java
##########
@@ -114,16 +129,26 @@ public K getKey() {
     return address.getSpec().bind(address.getId(), new 
FlinkStateBinder(namespace, context));
   }
 
-  public void clearBagStates(StateNamespace namespace, StateTag<? extends 
BagState> address)
-      throws Exception {
-    CoderTypeSerializer typeSerializer = new 
CoderTypeSerializer<>(VoidCoder.of());
-    flinkStateBackend.applyToAllKeys(
-        namespace.stringKey(),
-        StringSerializer.INSTANCE,
-        new ListStateDescriptor<>(address.getId(), typeSerializer),
-        (key, state) -> {
-          state.clear();
-        });
+  /**
+   * Allows to clear all state for the global watermark when the maximum 
watermark arrives. We do
+   * not clean up the global window state via timers which would lead to an 
unbounded number of keys
+   * and cleanup timers. Instead, the cleanup code below should be run when we 
finally receive the
+   * max watermark.
+   */
+  public void clearGlobalState() {

Review comment:
       I think it has to be because this is called from outside of the `state` 
package.




----------------------------------------------------------------
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:
[email protected]


Reply via email to