[
https://issues.apache.org/jira/browse/GERONIMO-4471?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Lin Sun resolved GERONIMO-4471.
-------------------------------
Resolution: Fixed
see subversion commits tab
> improve heuristic exception handling in rollback when txmanager.commit is
> called
> --------------------------------------------------------------------------------
>
> Key: GERONIMO-4471
> URL: https://issues.apache.org/jira/browse/GERONIMO-4471
> Project: Geronimo
> Issue Type: Improvement
> Security Level: public(Regular issues)
> Components: transaction manager
> Affects Versions: 2.1.4, 2.2
> Reporter: Lin Sun
> Assignee: Lin Sun
> Fix For: 2.1.4, 2.2
>
>
> Improve heuristic exception handling during rollback, when txmanager.commit
> is called by providing a rollbackResourcesDuringCommit method to throw
> appropriate heuristic exceptions. The logic is:
> 1. If XAException.XA_HEURRB arisen from XAResource rollback, this means
> transaction has been heuristically rolled back, thus we just throw normal
> RollbackException.
> 2. If XAException.XA_HEURMIX arisen from XAResource rollback, this means
> transaction has been heuristically rolled back and committed, thus we just
> throw HeuristicMixedException.
> 3. If XAException.XA_HEURCOM arisen from XAResource rollback, this means
> transaction has been heuristically committed. In this case, if transaction
> has ever been committed (via other XAResources enlisted), then we throw
> HeuristicMixedException.
> 4. Other XAExceptions, throw SystemExceptions.
> 5. If no specific XAException or only XAException.XA_HEURRB, throw
> RollbackException.
> The rollbackResourcesDuringCommit method will be used during the commit
> context instead of the current rollbackResources method.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.