You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@beam.apache.org by "Kenneth Knowles (JIRA)" <ji...@apache.org> on 2016/09/20 20:53:20 UTC

[jira] [Created] (BEAM-653) Refine specification for WindowFn.isCompatible()

Kenneth Knowles created BEAM-653:
------------------------------------

             Summary: Refine specification for WindowFn.isCompatible() 
                 Key: BEAM-653
                 URL: https://issues.apache.org/jira/browse/BEAM-653
             Project: Beam
          Issue Type: New Feature
          Components: beam-model
            Reporter: Kenneth Knowles


{{WindowFn#isCompatible}} doesn't really have a spec. In practice, it is used primarily when flattening together multiple PCollections. All of the WindowFns must be compatible, and then just a single WindowFn is selected arbitrarily for the output PCollection.

In consequence, downstream of the Flatten, the merging behavior will be taken from this WindowFn.

Currently, there are some mismatches:

 - Sessions with different gap durations _are_ compatible today, but probably shouldn't be since merging makes little sense. (The use of tiny proto-windows is an implementation detail anyhow)
 - SlidingWindows and FixedWindows _could_ reasonably be compatible if they had the same duration, though it might be odd.

Either way, we should just nail down what we actually mean so we can arrive at a verdict in these cases.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)