Disallow Combiner Lifting for multi-window WindowFns

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

Branch: refs/heads/gearpump-runner
Commit: 29c2bca4649317f2ebb1c89f92bf97fbb27602ca
Parents: 39c80f6
Author: Thomas Groh <[email protected]>
Authored: Wed Jul 5 14:16:50 2017 -0700
Committer: Thomas Groh <[email protected]>
Committed: Wed Jul 5 14:16:50 2017 -0700

----------------------------------------------------------------------
 .../apache/beam/runners/dataflow/DataflowPipelineTranslator.java    | 1 +
 1 file changed, 1 insertion(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/beam/blob/29c2bca4/runners/google-cloud-dataflow-java/src/main/java/org/apache/beam/runners/dataflow/DataflowPipelineTranslator.java
----------------------------------------------------------------------
diff --git 
a/runners/google-cloud-dataflow-java/src/main/java/org/apache/beam/runners/dataflow/DataflowPipelineTranslator.java
 
b/runners/google-cloud-dataflow-java/src/main/java/org/apache/beam/runners/dataflow/DataflowPipelineTranslator.java
index 28fd1bb..f1783de 100644
--- 
a/runners/google-cloud-dataflow-java/src/main/java/org/apache/beam/runners/dataflow/DataflowPipelineTranslator.java
+++ 
b/runners/google-cloud-dataflow-java/src/main/java/org/apache/beam/runners/dataflow/DataflowPipelineTranslator.java
@@ -793,6 +793,7 @@ public class DataflowPipelineTranslator {
                 
context.getPipelineOptions().as(StreamingOptions.class).isStreaming();
             boolean disallowCombinerLifting =
                 !windowingStrategy.getWindowFn().isNonMerging()
+                    || !windowingStrategy.getWindowFn().assignsToOneWindow()
                     || (isStreaming && !transform.fewKeys())
                     // TODO: Allow combiner lifting on the non-default 
trigger, as appropriate.
                     || !(windowingStrategy.getTrigger() instanceof 
DefaultTrigger);

Reply via email to