Hi,
 
we set our journal in a separate DB to reduce the risk of Lock Problems due our 
normal Content Databases. We faced the same problem when we use the journal and 
content in same database due lot of revisions in a cluster environment. The 
Journal Revision Updates blocked our normal read/write content Tasks.
 
Regards, Michael
 
 

-------- Weitergeleitete Nachricht --------
Betreff:JcrMappingException: Could not create node - Lock wait timeout 
exceeded; try restarting transaction Help Needed
Datum:Wed, 14 Sep 2016 17:44:09 +0000
Von:Kishore Ohal <kishore.o...@lrn.com>[kishore.o...@lrn.com]
Antwort an:users@jackrabbit.apache.org[users@jackrabbit.apache.org]
An:users@jackrabbit.apache.org[users@jackrabbit.apache.org] 
<users@jackrabbit.apache.org>[users@jackrabbit.apache.org]  
Hi ,

While performing database operations from our application we are getting below 
error(using Apache Jackrabbit 2.8.2 and MYSQL)

Caused by: org.jcrom.JcrMappingException: Could not create node
        at org.jcrom.dao.AbstractJcrDAO.create(AbstractJcrDAO.java:337)

Caused by: javax.jcr.RepositoryException: 
org.apache.jackrabbit.core.state.ItemStateException: Unable to create log 
entry: Unable to lock global revision table.
        at 
org.apache.jackrabbit.core.version.InternalVersionManagerBase.internalCreateVersionHistory(InternalVersionManagerBase.java:461)

Caused by: org.apache.jackrabbit.core.state.ItemStateException: Unable to 
create log entry: Unable to lock global revision table.
        at 
org.apache.jackrabbit.core.state.SharedItemStateManager$Update.begin(SharedItemStateManager.java:575)

Caused by: org.apache.jackrabbit.core.cluster.ClusterException: Unable to 
create log entry: Unable to lock global revision table.
        at 
org.apache.jackrabbit.core.cluster.ClusterNode$WorkspaceUpdateChannel.updateCreated(ClusterNode.java:639)
        at 
org.apache.jackrabbit.core.state.SharedItemStateManager$Update.begin(SharedItemStateManager.java:573)


Caused by: org.apache.jackrabbit.core.journal.JournalException: Unable to lock 
global revision table.
        at 
org.apache.jackrabbit.core.journal.DatabaseJournal.doLock(DatabaseJournal.java:495)
        at 
org.apache.jackrabbit.core.journal.AbstractJournal.internalLockAndSync(AbstractJournal.java:317)

Caused by: java.sql.SQLException: Lock wait timeout exceeded; try restarting 
transaction
        at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1084)
        at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4232)
        at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4164)



mysql> show open tables where in_use>0;
+--------------+-------------------------+--------+-------------+
| Database     | Table                   | In_use | Name_locked |
+--------------+-------------------------+--------+-------------+
| courseauthor | JOURNAL_GLOBAL_REVISION |      1 |           0 |
+--------------+-------------------------+--------+-------------+
1 row in set (0.00 sec)

processlist
| Query       |    18 | Searching rows for update                               
              | update JOURNAL_GLOBAL_REVISION set REVISION_ID = REVISION_ID + 
1 |


mysql> SELECT @@GLOBAL.tx_isolation, @@tx_isolation, @@session.tx_isolation;
+-----------------------+-----------------+------------------------+
| @@GLOBAL.tx_isolation | @@tx_isolation  | @@session.tx_isolation |
+-----------------------+-----------------+------------------------+
| REPEATABLE-READ       | REPEATABLE-READ | REPEATABLE-READ        |
+-----------------------+-----------------+------------------------+
1 row in set (0.00 sec)



mysql> SELECT @@GLOBAL.tx_isolation, @@tx_isolation, @@session.tx_isolation;
+-----------------------+-----------------+------------------------+
| @@GLOBAL.tx_isolation | @@tx_isolation  | @@session.tx_isolation |
+-----------------------+-----------------+------------------------+
| REPEATABLE-READ       | REPEATABLE-READ | REPEATABLE-READ        |
+-----------------------+-----------------+------------------------+
1 row in set (0.00 sec)

It will a great help if can give a solution as it is stopping our application.

Regards,
Kishore


Reply via email to