Uploaded image for project: 'Nuxeo Platform'
  1. Nuxeo Platform
  2. NXP-8994

SQL Server cluster locking failures

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Minor
    • Resolution: Fixed
    • Affects Version/s: 5.5
    • Fix Version/s: 5.6-RC1, 5.6
    • Component/s: Core VCS

      Description

      SQL Server in cluster mode may fail to set locks due to:

      org.nuxeo.ecm.core.storage.StorageException: Could not insert: INSERT INTO [locks] ([id], [owner], [created]) VALUES (?, ?, ?)
      	at org.nuxeo.ecm.core.storage.sql.jdbc.JDBCRowMapper.insertSimpleRows(JDBCRowMapper.java:579)
      	at org.nuxeo.ecm.core.storage.sql.jdbc.JDBCMapper.setLock(JDBCMapper.java:1031)
      	at org.nuxeo.ecm.core.storage.sql.LockManager$1.call(LockManager.java:221)
      	at org.nuxeo.ecm.core.storage.sql.LockManager$1.call(LockManager.java:218)
      	at org.nuxeo.ecm.core.storage.sql.LockManager.callInTransaction(LockManager.java:303)
      	at org.nuxeo.ecm.core.storage.sql.LockManager.setLockInternal(LockManager.java:218)
      	at org.nuxeo.ecm.core.storage.sql.LockManager.setLock(LockManager.java:165)
      	at org.nuxeo.ecm.core.storage.sql.SessionImpl.setLock(SessionImpl.java:1085)
      	at org.nuxeo.ecm.core.storage.sql.TestSQLBackend$LockingJob.doHeavyLockingJob(TestSQLBackend.java:2792)
      	at org.nuxeo.ecm.core.storage.sql.TestSQLBackend$LockingJob.run(TestSQLBackend.java:2760)
      	at java.lang.Thread.run(Thread.java:662)
      Caused by: java.sql.BatchUpdateException: Snapshot isolation transaction aborted due to update conflict. You cannot use snapshot isolation to access table 'dbo.locks' directly or indirectly in database 'jabberwock' to update, delete, or insert the row that has been modified or deleted by another transaction. Retry the transaction or change the isolation level for the update/delete statement.
      	at net.sourceforge.jtds.jdbc.JtdsStatement.executeBatch(JtdsStatement.java:947)
      	at net.sourceforge.jtds.jdbcx.proxy.StatementProxy.executeBatch(StatementProxy.java:495)
      	at org.nuxeo.ecm.core.storage.sql.jdbc.JDBCRowMapper.insertSimpleRows(JDBCRowMapper.java:564)
      	... 10 more
      

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                fguillaume Florent Guillaume
                Reporter:
                fguillaume Florent Guillaume
                Participants:
              • Votes:
                0 Vote for this issue
                Watchers:
                0 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: