You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@jackrabbit.apache.org by "Andreas Zschorn (JIRA)" <ji...@apache.org> on 2011/02/22 18:45:39 UTC
[jira] Commented: (JCR-2901) JCR-2523 break the transaction
handling in container managed environment
[ https://issues.apache.org/jira/browse/JCR-2901?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12997923#comment-12997923 ]
Andreas Zschorn commented on JCR-2901:
--------------------------------------
i tested it, it does not work, nevertheless we found hopefully a final solution. I will create a patch for it. The TransactionBoundXAResource may not be newly created. This objects are cached by the transaction handler from the application server. So the solution is just to set the session.getXAResource in the TracsactionBoundXAResource. After this everything works as expected.
> JCR-2523 break the transaction handling in container managed environment
> ------------------------------------------------------------------------
>
> Key: JCR-2901
> URL: https://issues.apache.org/jira/browse/JCR-2901
> Project: Jackrabbit Content Repository
> Issue Type: Bug
> Components: jackrabbit-jca
> Affects Versions: 2.1.3, 2.2.4
> Environment: Container managed transactions on jboss 4.2.3 with spring-jcr-modules
> Reporter: Andreas Zschorn
> Assignee: Claus Köll
> Priority: Blocker
> Labels: Transaction,, container, managed
> Attachments: JCR-2901.patch, testproject.zip
>
>
> during the cleanup (returning to the pool) of an jca managed connection, an new internal session is created in the object JCAManagedConnection in the method cleanup, this is supposed to fix JCR-2523, The sideeffect is, that the XA-Resource (variable-xaResource) in JCAManagedConnection is not anymore the same XASessionImpl Object like the session Object. Subsequent calls on this connection, lead that the internal session variable is not anymore informed about the current transaction context. (XAItemStateManager, variables tx and txLog are null), because only the xaResource is informed about the new transaction context. Result is that the complete transaction handling does not work anymore.
> I attached a sample project which shows this behaviour.
--
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira