Uploaded image for project: 'Beam'
  1. Beam
  2. BEAM-3360

[SQL] Do not assign triggers for HOP/TUMBLE

Details

    • Task
    • Status: Resolved
    • P2
    • Resolution: Fixed
    • None
    • 2.4.0
    • dsl-sql
    • None

    Description

      Currently when parsing HOP/TUMBLE/SESSION expressions we create a repeating trigger for the defined windows, see:

      BeamAggregationRule.java
      
        private Trigger createTriggerWithDelay(GregorianCalendar delayTime) {
          return Repeatedly.forever(AfterWatermark.pastEndOfWindow().withLateFirings(AfterProcessingTime
              .pastFirstElementInPane().plusDelayOf(Duration.millis(delayTime.getTimeInMillis()))));
        }
      

      This will not work correctly with joins, as joins with multiple trigger firings are currently broken: https://issues.apache.org/jira/browse/BEAM-3190 .

      Even if joins with multiple firings worked correctly, SQL parsing stage is still probably an incorrect place to infer them.

      Better alternatives:

      • inherit the user-defined triggers for the input pcollection without modification;
      • triggering at sinks ( https://s.apache.org/beam-sink-triggers ) might define a way to backpropagate triggers with correct semantics;

      Attachments

        Issue Links

          Activity

            People

              kedin Anton Kedin
              kedin Anton Kedin
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: