flink-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From aljoscha <...@git.apache.org>
Subject [GitHub] flink pull request: [FLINK-3174] Add merging WindowAssigner
Date Wed, 16 Dec 2015 13:13:54 GMT
GitHub user aljoscha opened a pull request:

    https://github.com/apache/flink/pull/1460

    [FLINK-3174] Add merging WindowAssigner

    After triggering and before emitting the window contents the window
    assigner is given the change to merge existing windows. The trigger is
    then given a chance to react in the new Trigger.onMerge() call.
    
    This adds new method WindowAssigner.isMerging() that allows window
    assigners to specify whether they can merge windows. All existing
    assigners are now derived from NonMergingWindowAssigner that returns
    false for isMerging(). Only of a WindowAssigners announces that it can
    merge is the more costly merging logic used in the WindowOperator.
    
    For triggers there is new method Trigger.onMerge() that notifies the
    trigger of the new merged window as well as the old windows and old
    trigger contexts. This allows the trigger to set a timer for the newly
    merged window.
    
    This enables proper support for session windows.
    
    This also adds the SessionWindows window assigner and adapts an existing
    session example and adds test cases.

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/aljoscha/flink window-sessions

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/flink/pull/1460.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #1460
    
----
commit dd87f6bc6ecc70d5ee2850ba0a954efdfda74db2
Author: Aljoscha Krettek <aljoscha.krettek@gmail.com>
Date:   2015-12-15T16:37:48Z

    [FLINK-3174] Add merging WindowAssigner
    
    After triggering and before emitting the window contents the window
    assigner is given the change to merge existing windows. The trigger is
    then given a chance to react in the new Trigger.onMerge() call.
    
    This adds new method WindowAssigner.isMerging() that allows window
    assigners to specify whether they can merge windows. All existing
    assigners are now derived from NonMergingWindowAssigner that returns
    false for isMerging(). Only of a WindowAssigners announces that it can
    merge is the more costly merging logic used in the WindowOperator.
    
    For triggers there is new method Trigger.onMerge() that notifies the
    trigger of the new merged window as well as the old windows and old
    trigger contexts. This allows the trigger to set a timer for the newly
    merged window.
    
    This enables proper support for session windows.
    
    This also adds the SessionWindows window assigner and adapts an existing
    session example and adds test cases.

----


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

Mime
View raw message