A minimal example project which demonstrates the WFCORE-4967 EJB timer issue
RequestController is not thread safe when in paused mode.
- Entry: ControlPoint.requestComplete() used by ManagedExecutorServiceImpl / ManagedScheduledExecutorImpl
- problematic method: RequestController.findForcedTask()
- Deploy sample application to the wildfly server (via cli or just by copy it to standalone/deployments).
- Start the server
Above order is very important because when app is deployed after RequestController is resumed, issue is not occurring.
All timers from SomeTimers class are triggered after the server is resumed.
This can be confirmed by finding an entry in server log at INFO level, which message starts with timers OK
Some (random) timers are omitted, there is a message in logs saying timers FAIL
or there is no log entry at all.