[jboss-jira] [JBoss JIRA] (WFLY-11590) Cancelled timer not removed from internal cache when using persistent timers

Jörg Bäsner (Jira) issues at jboss.org
Mon Jan 14 09:52:04 EST 2019


     [ https://issues.jboss.org/browse/WFLY-11590?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jörg Bäsner updated WFLY-11590:
-------------------------------
    Steps to Reproduce: 
1.) 2 WildFly server with the same configuration using an EJB timer with DB persistence.
2.) the attached application ({{playground-jar.jar}}) that starts 2 timer (1 _scanner_ timer and 1 _future_ timer)
  - the _scanner_ timer runs every couple of seconds (e. g. 4 sec)
  - the _future_ timer will never execute, it is always only _cancelled_ and newly _created_ by the _scanner_ timer (always adding 1 hour) 
3.) running both servers with simple {{standalone.xml}} with persistent database timer with a _refresh-interval_ of 2000 (2 seconds) configuration and a port offset

It can be observed that the output for {{getTimers()}} on one node will increase in it's number.

  was:
1.) 2 WildFly server with the same configuration using an EJB timer with DB persistence.
2.) the attached application that starts 2 timer (1 _scanner_ timer and 1 _future_ timer)
  - the _scanner_ timer runs every couple of seconds (e. g. 4 sec)
  - the _future_ timer will never execute, it is always only _cancelled_ and newly _created_ by the _scanner_ timer (always adding 1 hour) 
3.) running both servers with simple {{standalone.xml}} with persistent database timer with a _refresh-interval_ of 2000 (2 seconds) configuration and a port offset

It can be observed that the output for {{getTimers()}} on one node will increase in it's number.



> Cancelled timer not removed from internal cache when using persistent timers
> ----------------------------------------------------------------------------
>
>                 Key: WFLY-11590
>                 URL: https://issues.jboss.org/browse/WFLY-11590
>             Project: WildFly
>          Issue Type: Bug
>          Components: EJB
>    Affects Versions: 15.0.1.Final
>         Environment: * 2 WildFly server running the same application (not necessarily clustered), but using the same database persistence for timers
>            Reporter: Jörg Bäsner
>            Assignee: Jörg Bäsner
>            Priority: Major
>         Attachments: playground-jar.jar, playground.zip
>
>
> When using database persistence for timers, the timers that are _synced_ via the {{RefreshTask}} and lateron _removed_ by the {{RefreshTask}} will not be deleted from the internal {{[timers|https://github.com/wildfly/wildfly/blob/master/ejb3/src/main/java/org/jboss/as/ejb3/timerservice/TimerServiceImpl.java#L120]}} _cache_ in {{[TimerServiceImpl.java|https://github.com/wildfly/wildfly/blob/master/ejb3/src/main/java/org/jboss/as/ejb3/timerservice/TimerServiceImpl.java#L1326]}}



--
This message was sent by Atlassian Jira
(v7.12.1#712002)



More information about the jboss-jira mailing list