[jbossts-issues] [JBoss JIRA] (JBTM-2331) TransactionalDriver may leave a JDBC Connection associated after transaction termination

Tom Jenkinson (JIRA) issues at jboss.org
Fri May 1 09:37:52 EDT 2015


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

Tom Jenkinson closed JBTM-2331.
-------------------------------


> TransactionalDriver may leave a JDBC Connection associated after transaction termination
> ----------------------------------------------------------------------------------------
>
>                 Key: JBTM-2331
>                 URL: https://issues.jboss.org/browse/JBTM-2331
>             Project: JBoss Transaction Manager
>          Issue Type: Bug
>          Components: JTA
>    Affects Versions: 5.0.4
>            Reporter: Michael Musgrove
>            Assignee: Michael Musgrove
>             Fix For: 5.1.0
>
>
> 1) Start a transaction;
> 2) Obtain a connection via the TransactionalDriver 
> 3) End transaction
> 4) start another transaction
> 5) Call connection.isClosed()
> this will produce the following exception because the transactional driver thinks the connection is still associated:
> {code}
> java.lang.RuntimeException: java.sql.SQLException: ARJUNA017003: Checking transaction and found that this connection is already associated with a different transaction! Obtain a new connection for this transaction.
> 	at ceylon.modules.bootstrap.CeylonRunTool.run(CeylonRunTool.java:228)
> 	at com.redhat.ceylon.common.tools.CeylonTool.run(CeylonTool.java:368)
> 	at com.redhat.ceylon.common.tools.CeylonTool.execute(CeylonTool.java:305)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> 	at java.lang.reflect.Method.invoke(Method.java:606)
> 	at com.redhat.ceylon.launcher.Launcher.runInJava7Checked(Launcher.java:113)
> 	at com.redhat.ceylon.launcher.Launcher.run(Launcher.java:40)
> 	at com.redhat.ceylon.launcher.Launcher.run(Launcher.java:33)
> 	at com.redhat.ceylon.launcher.Launcher.main(Launcher.java:26)
> Caused by: java.sql.SQLException: ARJUNA017003: Checking transaction and found that this connection is already associated with a different transaction! Obtain a new connection for this transaction.
> 	at com.arjuna.ats.internal.jdbc.ConnectionImple.checkTransaction(ConnectionImple.java:1078)
> 	at com.arjuna.ats.internal.jdbc.ConnectionImple.isClosed(ConnectionImple.java:417)
> 	at ceylon.dbc.ConnectionStatus.connection(ConnectionStatus.ceylon:22)
> 	at ceylon.dbc.Sql.prepareStatement$priv$(Sql.ceylon:89)
> 	at ceylon.dbc.Sql.access$100(Sql.ceylon:701)
> 	at ceylon.dbc.Sql$Update.execute$canonical$(Sql.ceylon:346)
> 	at ceylon.dbc.Sql$Update.execute(Sql.ceylon:343)
> 	at example.ceylon.transaction.tm.runTx_.runTx(transaction.ceylon:199)
> 	at example.ceylon.transaction.tm.run_.run(transaction.ceylon:225)
> 	at example.ceylon.transaction.tm.run_.main(transaction.ceylon)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> 	at java.lang.reflect.Method.invoke(Method.java:606)
> 	at ceylon.modules.api.runtime.SecurityActions.invokeRunInternal(SecurityActions.java:58)
> 	at ceylon.modules.api.runtime.SecurityActions.invokeRun(SecurityActions.java:48)
> 	at ceylon.modules.api.runtime.AbstractRuntime.invokeRun(AbstractRuntime.java:101)
> 	at ceylon.modules.api.runtime.AbstractRuntime.execute(AbstractRuntime.java:167)
> 	at ceylon.modules.api.runtime.AbstractRuntime.execute(AbstractRuntime.java:151)
> 	at ceylon.modules.Main.execute(Main.java:69)
> 	at ceylon.modules.Main.main(Main.java:42)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> 	at java.lang.reflect.Method.invoke(Method.java:606)
> 	at org.jboss.modules.Module.run(Module.java:312)
> 	at org.jboss.modules.Main.main(Main.java:460)
> 	at ceylon.modules.bootstrap.CeylonRunTool.run(CeylonRunTool.java:208)
> 	... 10 more
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


More information about the jbossts-issues mailing list