[jboss-jira] [JBoss JIRA] (WFLY-4327) when background tx-timeout rolls back the transaction, application thread should call tx.rollback instead of tx.suspend
Scott Marlow (JIRA)
issues at jboss.org
Tue Feb 10 18:45:50 EST 2015
[ https://issues.jboss.org/browse/WFLY-4327?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Scott Marlow updated WFLY-4327:
-------------------------------
Fix Version/s: 9.0.0.Beta1
> when background tx-timeout rolls back the transaction, application thread should call tx.rollback instead of tx.suspend
> -----------------------------------------------------------------------------------------------------------------------
>
> Key: WFLY-4327
> URL: https://issues.jboss.org/browse/WFLY-4327
> Project: WildFly
> Issue Type: Bug
> Components: EJB
> Reporter: Scott Marlow
> Assignee: Scott Marlow
> Fix For: 9.0.0.Beta1
>
>
> We found out that when the transaction manager "reaper" thread rolls back a transaction, it doesn't remove the transaction from a static collection. tx.suspend, which disassociates the transaction from the application thread, also doesn't remove the transaction from the static collection. As a result, the transaction leaks and all of the objects references by it (including all resources that are put there like JPA persistence contexts).
> To address this, we should change org.jboss.as.ejb3.tx.CMTTxInterceptor.endTransaction (STATUS_ROLLEDBACK case in switch statement) to call tm.rollback() instead of tm.suspend().
--
This message was sent by Atlassian JIRA
(v6.3.11#6341)
More information about the jboss-jira
mailing list