Ankush Malhotra created JCR-3738:
------------------------------------

             Summary: CLONE - Deadlock on LOCAL_REVISION table in clustering 
environment
                 Key: JCR-3738
                 URL: https://issues.apache.org/jira/browse/JCR-3738
             Project: Jackrabbit Content Repository
          Issue Type: Bug
          Components: clustering
    Affects Versions: 2.4.3
         Environment: Env.1: 4x Linux server CentOS 5 MSSQL 2008 database 
(production system)
Env.2: 2x Linux Ubuntu 10.04 server tested with PostgreSQL 9.1, H2, MSSQL 2008 
and mySQL 5.5 (lab system)
            Reporter: Ankush Malhotra
            Assignee: Bart van der Schans
            Priority: Critical
             Fix For: 2.5.3


When inserting a lot of nodes concurrently (100/200 threads) the system hangs 
generating a deadlock on the LOCAL_REVISION table.
There is a thread that starts a transaction but the transaction remains open, 
while another thread tries to acquire the lock on the table.
This actually happen even if there is only a server up but configured in 
cluster mode.
I found that in AbstractJournal, we try to write the LOCAL_REVISION even if we 
don't sync any record because they're generated by the same journal of the 
thread running.

Removing this unnecessary (to me :-) ) write to the LOCAL_REVISION table, 
remove the deadlock.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)

Reply via email to