[
https://issues.jboss.org/browse/WFLY-6412?page=com.atlassian.jira.plugin....
]
Maxim Karavaev commented on WFLY-6412:
--------------------------------------
Hi [~swd847]!
I suppose, that the problem is much deeper.
Oracle DB doesn't have AUTOCOMMIT option at ALL!!! So the client should manage his
transactions every time manually. I do not see any TX management over a connection in the
method
{code}
org.jboss.as.ejb3.timerservice.persistence.database.DatabaseTimerPersistence#persistTimer
{code}
That's mean, that finishing timer invocation will not be persisted ( or it will be in
some serendipitous cases when the same connection will be used in the method _shouldRun_,
where TX is managed)
Right now (I've tried to make it work in WF11 and WF12) persistent Timer logic
doesn't work reliably with the Oracle DB.
Timer fails if transaction isolation set to SERIALIZABLE on Oracle
11g
----------------------------------------------------------------------
Key: WFLY-6412
URL:
https://issues.jboss.org/browse/WFLY-6412
Project: WildFly
Issue Type: Bug
Components: EJB
Affects Versions: 8.2.0.Final, 10.0.0.Final
Environment: Linux, JDK8, Oracle DB 11g
Reporter: Gábor Péntek
Assignee: Stuart Douglas
Fix For: 11.0.0.Alpha1
If the transaction isolation level is set to SERIALIZABLE if one node aquires the row
lock via the
UPDATE JBOSS_EJB_TIMER..
the other nodes throw an
ORA-08177: can't serialize access for this transaction
exception.
The timer thats row threw the exception never runs any more, not even in case the other
nodes were shut down.
The serialization exception is also thrown upon server/application startup sometimes.
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)