Derby
  1. Derby
  2. DERBY-5454

ERROR 40001 deadlock in nstest on select max(serialkey)

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 10.7.1.1, 10.8.2.2
    • Fix Version/s: 10.8.3.0, 10.9.1.0
    • Component/s: Test
    • Labels:
      None
    • Bug behavior facts:
      Regression Test Failure

      Description

      nstest with 10.8.2 (both 10.8.2.1 RC2 (revision 1170221) and builds off the 10.8. tree at 10.8.2.2 level after backing out re DERBY-5448) show deadlock errors like the following:

      Caused by: ERROR 40001: A lock could not be obtained due to a deadlock, cycle of
      at org.apache.derby.impl.jdbc.EmbedConnection.handleException(Unknown Source)
      at org.apache.derby.impl.jdbc.ConnectionChild.handleException(Unknown Source)
      at org.apache.derby.impl.jdbc.EmbedResultSet.closeOnTransactionError(Unknown Source)
      at org.apache.derby.impl.jdbc.EmbedResultSet.movePosition(Unknown Source)
      at org.apache.derby.impl.jdbc.EmbedResultSet.next(Unknown Source)
      at org.apache.derbyTesting.system.nstest.utils.DbUtil.pick_one(DbUtil.java:491)
      at org.apache.derbyTesting.system.nstest.utils.DbUtil.delete_one_row(DbUtil.java:418)
      at org.apache.derbyTesting.system.nstest.tester.TesterObject.doIUDOperation(TesterObject.java:175)
      at org.apache.derbyTesting.system.nstest.tester.Tester2.startTesting(Tester2.java:109)
      at org.apache.derbyTesting.system.nstest.NsTest.run(NsTest.java:555)
      Caused by: java.sql.SQLException: A lock could not be obtained due to a deadlock, cycle of locks and waiters is:
      Lock : ROW, NSTESTTAB, (619,15)
      Waiting XID :

      {104564, S}

      , NSTEST, select max(serialkey) from nstesttab where serialkey > ?
      Granted XID :

      {104179, X}

      Lock : ROW, NSTESTTAB, (619,16)
      Waiting XID :

      {104179, S}

      , NSTEST, select max(serialkey) from nstesttab where serialkey > ?
      Granted XID :

      {104564, X}

      . The selected victim is XID : 104564.
      at org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(Unknown Source)
      at org.apache.derby.impl.jdbc.SQLExceptionFactory40.wrapArgsForTransportAcrossDRDA(Unknown Source)
      ... 14 more

      For more examples, see comments on DERBY-5448.

      1. DERBY-5454_try1.diff
        2 kB
        Myrna van Lunteren
      2. DERBY-5454_try2.diff
        3 kB
        Myrna van Lunteren

        Issue Links

          Activity

            People

            • Assignee:
              Myrna van Lunteren
              Reporter:
              Myrna van Lunteren
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development