]
RH Bugzilla Integration commented on WFLY-8929:
-----------------------------------------------
wfink(a)redhat.com changed the Status of [bug
Race condition if timers overlap due to long running execution and
short schedules if database persistence is used
------------------------------------------------------------------------------------------------------------------
Key: WFLY-8929
URL:
https://issues.jboss.org/browse/WFLY-8929
Project: WildFly
Issue Type: Bug
Components: EJB
Environment: Configure DB persistence for timers as file-persistence will not
have a persistence check for shouldRun to lock the timer execution.
Reporter: Wolf-Dieter Fink
Assignee: Wolf-Dieter Fink
Attachments: server-extract.log, server1.log
If timers (here calendar timer) are running longer than scheduled, or the
schedule/processing get stuck do to thread or cpu bottleneck, it is possible that the
updates for persistence overlap.
The issue seems that the task(1) try to finish the timer and task(2) is about to start
but see the concurrency.
The DB is updated with the 'old' next timeout, but the internal Timer instance
will be updated with the next possible schedule due to a race condition between the two
threads updating the object.