Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

EJB persistent timer may attempt to run after server stop issued #14421

Closed
tkburroughs opened this issue Oct 9, 2020 · 0 comments · Fixed by #14422
Closed

EJB persistent timer may attempt to run after server stop issued #14421

tkburroughs opened this issue Oct 9, 2020 · 0 comments · Fixed by #14422
Assignees
Labels
in:EJB Container release bug This bug is present in a released version of Open Liberty release:200011 team:Blizzard

Comments

@tkburroughs
Copy link
Member

java.lang.Exception: 2020-09-26-14:16:43:025 Errors/warnings were found in server com.ibm.ws.ejbcontainer.timer.persistent.fat.PersistentTimerRestartServer logs:

[9/26/20, 14:16:37:998 UTC] 00000035 com.ibm.ejs.container.LocalExceptionMappingStrategy E CNTR0020E: EJB threw an unexpected (non-declared) exception during invocation of method "timeout" on bean "BeanId(RestartMissedTimerActionApp#RestartMissedTimerActionEJB.jar#RestartMissedTimerActionBean, null)". Exception data: java.lang.IllegalStateException: Singleton Session Bean: Timer Service methods not allowed from state = DESTROYED

[9/26/20, 14:16:38:486 UTC] 00000035 com.ibm.ejs.j2c.XATransactionWrapper E J2CA0027E: An exception occurred while invoking end on an XA Resource Adapter from DataSource dataSource[DefaultDataSource], within transaction ID {XidImpl: formatId(57415344), gtrid_length(36), bqual_length(54),
at componenttest.topology.impl.LibertyServer.checkLogsForErrorsAndWarnings(LibertyServer.java:2555)
at componenttest.topology.impl.LibertyServer.stopServer(LibertyServer.java:2420)
at componenttest.topology.impl.LibertyServer.stopServer(LibertyServer.java:2235)
at componenttest.topology.impl.LibertyServer.stopServer(LibertyServer.java:2210)
at com.ibm.ws.ejbcontainer.timer.persistent.fat.tests.PersistentTimerRestartTest.testMissedTimerAction(PersistentTimerRestartTest.java:161)
at com.ibm.ws.ejbcontainer.timer.persistent.fat.tests.PersistentTimerRestartTest.testMissedTimerActionDefaultNoFailoverRestart(PersistentTimerRestartTest.java:99)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at componenttest.custom.junit.runner.FATRunner$1.evaluate(FATRunner.java:197)
at componenttest.rules.repeater.RepeatTests$CompositeRepeatTestActionStatement.evaluate(RepeatTests.java:115)
at componenttest.custom.junit.runner.FATRunner$2.evaluate(FATRunner.java:318)
at componenttest.custom.junit.runner.FATRunner.run(FATRunner.java:171)

@tkburroughs tkburroughs added in:EJB Container team:Blizzard release bug This bug is present in a released version of Open Liberty labels Oct 9, 2020
@tkburroughs tkburroughs self-assigned this Oct 9, 2020
tkburroughs added a commit to tkburroughs/open-liberty that referenced this issue Oct 9, 2020
The EJB Timer Service should not attempt to start an EJB persistent timer
running once server quiesce has started (i.e. server shutting down).

Update PersistentTimerTaskHandler to match corresponding code already
in place for non-persistent timers and similar to async methods.

Also, update the test to ignore an error from J2C that occurs if the
PersistentExecutor attempts to run a timer after the transaction
service has already been stopped. Should be less likely, but
could still occur.
tkburroughs added a commit that referenced this issue Oct 12, 2020
…sAfterQuiesce

Issue #14421: Avoid EJB Persistent Timers after quiesce
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
in:EJB Container release bug This bug is present in a released version of Open Liberty release:200011 team:Blizzard
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants