Steve Niemitz created BEAM-9557:
-----------------------------------

             Summary: Error setting processing time timers near end-of-window
                 Key: BEAM-9557
                 URL: https://issues.apache.org/jira/browse/BEAM-9557
             Project: Beam
          Issue Type: Bug
          Components: runner-core
    Affects Versions: 2.20.0
            Reporter: Steve Niemitz


Previously, it was possible to set a processing time timer past the end of a 
window, and it would simply not fire.

However, now, this results in an error:
{code:java}
java.lang.IllegalArgumentException: Attempted to set event time timer that 
outputs for 2020-03-19T18:01:35.000Z but that is after the expiration of window 
2020-03-19T17:59:59.999Z
        
org.apache.beam.vendor.guava.v26_0_jre.com.google.common.base.Preconditions.checkArgument(Preconditions.java:440)
        
org.apache.beam.runners.dataflow.worker.repackaged.org.apache.beam.runners.core.SimpleDoFnRunner$TimerInternalsTimer.setAndVerifyOutputTimestamp(SimpleDoFnRunner.java:1011)
        
org.apache.beam.runners.dataflow.worker.repackaged.org.apache.beam.runners.core.SimpleDoFnRunner$TimerInternalsTimer.setRelative(SimpleDoFnRunner.java:934)
<snip>.processElement(???.scala:187)
 {code}
 

I think the regression was introduced in commit 
a005fd765a762183ca88df90f261f6d4a20cf3e0.  Also notice that the error message 
is wrong, it says that "event time timer" but the timer is in the processing 
time domain.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to