[
https://issues.apache.org/jira/browse/JCR-3738?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jukka Zitting updated JCR-3738:
-------------------------------
Description:
Original, cloned description:
> 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 might not be the exact same case with this issue. See the attached thread
dumps etc. for full details.
was:
Original, cloned description:
{quote}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.
{quote}
This might not be the exact same case with this issue. See the attached thread
dumps etc. for full details.
> 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.6.2
> Environment: CQ5.6.1 with jackrabbit-core 2.6.2 backed off ibm db2
> v10.5
> Reporter: Ankush Malhotra
> Assignee: Jukka Zitting
> Priority: Critical
> Attachments: db-deadlock-info.txt, stat-cache.log, threaddumps.zip
>
>
> Original, cloned description:
> > 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 might not be the exact same case with this issue. See the attached
> thread dumps etc. for full details.
--
This message was sent by Atlassian JIRA
(v6.1.5#6160)