You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@beam.apache.org by "Kenneth Knowles (Jira)" <ji...@apache.org> on 2022/03/17 17:51:00 UTC

[jira] [Commented] (BEAM-14018) Canceling a timer by ID is not yet supported in InMemoryTimerInternals

    [ https://issues.apache.org/jira/browse/BEAM-14018?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17508347#comment-17508347 ] 

Kenneth Knowles commented on BEAM-14018:
----------------------------------------

A few different runners use this utility. But can you share which runner you are using?

> Canceling a timer by ID is not yet supported in InMemoryTimerInternals
> ----------------------------------------------------------------------
>
>                 Key: BEAM-14018
>                 URL: https://issues.apache.org/jira/browse/BEAM-14018
>             Project: Beam
>          Issue Type: Bug
>          Components: runner-direct
>    Affects Versions: 2.36.0
>            Reporter: Wenqing Yang
>            Priority: P2
>
> Got the following exception with spark runner and GroupIntoBatches transform:
> Caused by: java.lang.UnsupportedOperationException: Canceling a timer by ID is not yet supported.
>     at org.apache.beam.runners.core.InMemoryTimerInternals.deleteTimer(InMemoryTimerInternals.java:158)
>     at org.apache.beam.runners.core.SimpleDoFnRunner$TimerInternalsTimer.clear(SimpleDoFnRunner.java:1198)
>     at org.apache.beam.sdk.transforms.GroupIntoBatches$GroupIntoBatchesDoFn.processElement(GroupIntoBatches.java:474)
>  
> The InMemoryTimerInternals.deleteTimer with a timeDomain is not supported:
> public void deleteTimer(
> StateNamespace namespace, String timerId, String timerFamilyId, TimeDomain timeDomain) {
> throw new UnsupportedOperationException("Canceling a timer by ID is not yet supported.");
> }
> However, this function is called by SimpleDoFnRunner$TimerInternalsTimer.clear:
> public void clear() {
> this.timerInternals.deleteTimer(this.namespace, this.timerId, this.timerFamilyId, this.spec.getTimeDomain());
> }
> Which is called by GroupIntoBatches$GroupIntoBatchesDoFn.processElement.
>  



--
This message was sent by Atlassian Jira
(v8.20.1#820001)