beam-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Ismaël Mejía (JIRA) <j...@apache.org>
Subject [jira] [Updated] (BEAM-3332) AfterProcessingTimer trigger not firing if invoked exactly on time
Date Wed, 10 Jan 2018 10:34:00 GMT

     [ https://issues.apache.org/jira/browse/BEAM-3332?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Ismaël Mejía updated BEAM-3332:
-------------------------------
    Fix Version/s: 2.3.0

> AfterProcessingTimer trigger not firing if invoked exactly on time
> ------------------------------------------------------------------
>
>                 Key: BEAM-3332
>                 URL: https://issues.apache.org/jira/browse/BEAM-3332
>             Project: Beam
>          Issue Type: Bug
>          Components: runner-core
>    Affects Versions: 2.0.0, 2.1.0, 2.2.0
>            Reporter: Shen Li
>            Assignee: Kenneth Knowles
>            Priority: Trivial
>             Fix For: 2.3.0
>
>
> I occasionally run into an issue that the processing time trigger is invoked on time,
but the TriggerStateMachienRunner#shouldFire() returns false. After comparing time instances,
I found that this issue occurs when the trigger is invoked exactly on time. It is because
the AfterDelayFromFirstElementStateMachine does the following:
> {quote}    return delayedUntil != null
>         && getCurrentTime(context) != null
>         && getCurrentTime(context).isAfter(delayedUntil);{quote}
> which only returns true when the current processing time is AFTER (exclude equals) delayUntil.
Should it actually be !getCurrentTime(context).isBefore(delayedUntil) ?



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Mime
View raw message