Uploaded image for project: 'Flink'
  1. Flink
  2. FLINK-4407 Add DSL for specifying Window Triggers
  3. FLINK-3715

Move Accumulating/Discarding from Trigger to WindowOperator

    XMLWordPrintableJSON

Details

    • Sub-task
    • Status: Open
    • Major
    • Resolution: Unresolved
    • None
    • None
    • API / DataStream
    • None

    Description

      As mentioned in https://docs.google.com/document/d/1Xp-YBf87vLTduYSivgqWVEMjYUmkA-hyb4muX3KRl08/edit#heading=h.pyk1sn8f33q2 we should move the decision of whether to PURGE a window upon firing from the Trigger to the WindowOperator. This also requires to add API so that the user can specify whether windows should be purged upon trigger firing (discarding) or kept (accumulating).

      As mentioned in the above doc, the Trigger can react with 4 results right now: CONTINUE, FIRE, PURGE, FIRE_AND_PURGE. The behavior of a trigger is not apparent if not looking at the code of the trigger, this has confused a number of users. With the new regime, a Trigger can just decide whether to CONTINUE or FIRE. The setting of accumulating/discarding decides whether to purge the window or keep it.

      This depends on FLINK-3714 where we introduce an "allowed lateness" setting. Having a choice between accumulating and discarding only makes sense with an allowed lateness greater zero. Otherwise no late elements could ever arrive that would go into the kept windows.

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              aljoscha Aljoscha Krettek
              Votes:
              0 Vote for this issue
              Watchers:
              7 Start watching this issue

              Dates

                Created:
                Updated: