[ 
https://issues.apache.org/jira/browse/JCR-769?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12480844
 ] 

Dominique Pfister commented on JCR-769:
---------------------------------------

> I have not sayed that i have fixed the problem only with the fact of changing 
> the mapping between xid's and TransactionContexts. 

Sorry, I just thought I wasn't clear enough in my previous posts about why 
changing the mapping between XIDs and TransactionContexts is not the main issue.

> I thought that the semantic of joining XAResources to Global Transaction is 
> better then the one it is now. 

An XAResoruce in jackrabbit currently maps 1-1 to a XASessionImpl which 
represents the user or better: the changes made by one user. Of course, one 
could also map an XAResource to all changes made inside a global transaction 
(including all branches) but that still leaves the problem of integrating all 
changes made by all users in that transaction.

> For me its clear that the process is not easy and maybe a long term but if 
> you think its is not importand to identify the problems, ok let it be.

Sorry for having made that impression. You're right, there must be some 
semantics to let jackrabbit identify that two branches actually belong to the 
same transaction, but again, I still consider merging multiple updates made by 
different users to be the main issue.


> Unable to login with two different Credentials to same workspace in one 
> Transaction
> -----------------------------------------------------------------------------------
>
>                 Key: JCR-769
>                 URL: https://issues.apache.org/jira/browse/JCR-769
>             Project: Jackrabbit
>          Issue Type: Bug
>          Components: jca
>    Affects Versions: 1.2.1
>         Environment: Websphere 5.1.1 J2C Adapter
>            Reporter: Claus Köll
>         Attachments: patch.txt, stacktrace.txt
>
>
> I'm using the Jackrabbit 1.2.1 JCA adapter and trying to access in a 
> SessionBean-Method with Container Transaction a Workspace with 2 different 
> Credentials. 
> The Method takes about 400ms to finish but no commit on TransactionContextr 
> occurs (Debugging ..) only the prepare was called 2 times .
> The Container hangs on the PostInvoke Method about 5 seconds and then i get a 
> "javax.transaction.xa.XAException" 
> with the Warn Message: Transaction rolled back because timeout expired
> The code ..
> Context ctx = new InitialContext(); 
> Repository repository = (Repository) ctx.lookup("java:comp/env/jackrabbit"); 
> Credentials credentials = new SimpleCredentials("user1", 
> "password1".toCharArray()); 
> Credentials credentials2 = new SimpleCredentials("user2", 
> "password2".toCharArray()); 
> Session session1 = repository.login(credentials, "default"); 
> Session session2 = repository.login(credentials2, "default"); 
> Session1 adds a node to the workspace .. and with the session2 i do nothing 
> except the login !
> If i make no second login the Method works fine.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to