[
https://issues.apache.org/jira/browse/JCR-1634?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12681717#action_12681717
]
Marius Ropotica commented on JCR-1634:
--------------------------------------
Well, I've modified the XAEnvironment and XALockManager classes. I'm not sure
that this is the right solution, but it seems that the problem is gone.
In XAEnvironment I've modified addLockToken and removeLockToken methods as
following:
public void addLockToken(SessionImpl session, String lt) {
lockMgr.lockTokenAdded(session, lt);
}
public void removeLockToken(SessionImpl session, String lt) {
lockMgr.lockTokenRemoved(session, lt);
}
and in XALockManager class the following methods:
public void lockTokenAdded(SessionImpl session, String lt) {
if (isInXA()) {
xaEnv.addLockToken(session, lt);
} else {
lockMgr.lockTokenAdded(session, lt);
}
}
public void lockTokenRemoved(SessionImpl session, String lt) {
if (isInXA()) {
xaEnv.removeLockToken(session, lt);
} else {
lockMgr.lockTokenRemoved(session, lt);
}
}
> In XA transaction session.addLockToken() does not have effect
> -------------------------------------------------------------
>
> Key: JCR-1634
> URL: https://issues.apache.org/jira/browse/JCR-1634
> Project: Jackrabbit Content Repository
> Issue Type: Bug
> Components: jackrabbit-core, locks, transactions
> Affects Versions: core 1.4.4
> Environment: Jackrabbit Core 1.4.4, Jencks 2.0, Springmodules 0.8a,
> Jackrabbit JCA 1.4
> Reporter: Roman Puchkovskiy
> Attachments: test-external-lock-in-tx.zip
>
>
> Following sequence does not work as expected:
> 1. first tx (and first session)
> create node
> make it lockable
> 2. second tx (and second session)
> lock this node and save lock token
> 3. third tx (and third session)
> add saved lock token to session
> modify this locked node -> fails as if lock token was not added to session3
> The same sequence works as expected without transactions.
> I had to separate transactions 1 and 2 because JCR-1633 prevents node from
> being locked in same tx in which it was created.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.