remove is idempotent

Project: http://git-wip-us.apache.org/repos/asf/incubator-beam/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-beam/commit/34d0d446
Tree: http://git-wip-us.apache.org/repos/asf/incubator-beam/tree/34d0d446
Diff: http://git-wip-us.apache.org/repos/asf/incubator-beam/diff/34d0d446

Branch: refs/heads/master
Commit: 34d0d44680d2653d3fa2b81011061700c59509f5
Parents: bab23a9
Author: Mark Shields <[email protected]>
Authored: Thu Mar 10 14:11:20 2016 -0800
Committer: Mark Shields <[email protected]>
Committed: Thu Mar 10 14:11:20 2016 -0800

----------------------------------------------------------------------
 examples/pom.xml                                             | 2 +-
 pom.xml                                                      | 2 +-
 sdk/pom.xml                                                  | 2 +-
 .../cloud/dataflow/sdk/util/MergingActiveWindowSet.java      | 8 ++++++--
 4 files changed, 9 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/34d0d446/examples/pom.xml
----------------------------------------------------------------------
diff --git a/examples/pom.xml b/examples/pom.xml
index 2218367..c15f73f 100644
--- a/examples/pom.xml
+++ b/examples/pom.xml
@@ -22,7 +22,7 @@
   <parent>
     <groupId>com.google.cloud.dataflow</groupId>
     <artifactId>google-cloud-dataflow-java-sdk-parent</artifactId>
-    <version>1.5.0-SNAPSHOT</version>
+    <version>1.6.0-SNAPSHOT</version>
   </parent>
 
   <groupId>com.google.cloud.dataflow</groupId>

http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/34d0d446/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index 7e5e078..6fb0b32 100644
--- a/pom.xml
+++ b/pom.xml
@@ -35,7 +35,7 @@
   <url>http://cloud.google.com/dataflow</url>
   <inceptionYear>2013</inceptionYear>
 
-  <version>1.5.0-SNAPSHOT</version>
+  <version>1.6.0-SNAPSHOT</version>
 
   <licenses>
     <license>

http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/34d0d446/sdk/pom.xml
----------------------------------------------------------------------
diff --git a/sdk/pom.xml b/sdk/pom.xml
index f782b78..d7e10a5 100644
--- a/sdk/pom.xml
+++ b/sdk/pom.xml
@@ -22,7 +22,7 @@
   <parent>
     <groupId>com.google.cloud.dataflow</groupId>
     <artifactId>google-cloud-dataflow-java-sdk-parent</artifactId>
-    <version>1.5.0-SNAPSHOT</version>
+    <version>1.6.0-SNAPSHOT</version>
   </parent>
 
   <groupId>com.google.cloud.dataflow</groupId>

http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/34d0d446/sdk/src/main/java/com/google/cloud/dataflow/sdk/util/MergingActiveWindowSet.java
----------------------------------------------------------------------
diff --git 
a/sdk/src/main/java/com/google/cloud/dataflow/sdk/util/MergingActiveWindowSet.java
 
b/sdk/src/main/java/com/google/cloud/dataflow/sdk/util/MergingActiveWindowSet.java
index 5af4ea5..96629b1 100644
--- 
a/sdk/src/main/java/com/google/cloud/dataflow/sdk/util/MergingActiveWindowSet.java
+++ 
b/sdk/src/main/java/com/google/cloud/dataflow/sdk/util/MergingActiveWindowSet.java
@@ -191,8 +191,12 @@ public class MergingActiveWindowSet<W extends 
BoundedWindow> implements ActiveWi
 
   @Override
   public void remove(W window) {
-    Preconditions.checkState(isActive(window), "Window %s is not active", 
window);
-    for (W stateAddressWindow : activeWindowToStateAddressWindows.get(window)) 
{
+    Set<W> stateAddressWindows = activeWindowToStateAddressWindows.get(window);
+    if (stateAddressWindows == null) {
+      // Window is no longer active.
+      return;
+    }
+    for (W stateAddressWindow : stateAddressWindows) {
       windowToActiveWindow.remove(stateAddressWindow);
     }
     activeWindowToStateAddressWindows.remove(window);

Reply via email to