Uploaded image for project: 'Derby'
  1. Derby
  2. DERBY-2990

ResultSet.getBlob holds locks even with READ_UNCOMMITTED isolation level

Attach filesAttach ScreenshotVotersWatch issueWatchersCreate sub-taskLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Won't Fix
    • 10.1.3.1, 10.2.2.0, 10.3.1.4, 10.4.1.3
    • None
    • JDBC
    • None

    Description

      ResultSet.getBlob() holds locks even when isolation level is set to TRANSACTION_READ_UNCOMMITTED. See attached repro

      java GetBlobLocks
      Exception in thread "main" ERROR 40XL1: A lock could not be obtained within the time requested
      at org.apache.derby.iapi.error.StandardException.newException(Unknown Source)
      at org.apache.derby.impl.services.locks.LockSet.lockObject(Unknown Source)
      at org.apache.derby.impl.services.locks.SinglePool.lockAnObject(Unknown Source)
      at org.apache.derby.impl.services.locks.SinglePool.lockObject(Unknown Source)
      at org.apache.derby.impl.store.raw.xact.RowLocking3.lockRecordForWrite(Unknown Source)
      at org.apache.derby.impl.store.access.conglomerate.OpenConglomerate.lockPositionForWrite(Unknown Source)
      at org.apache.derby.impl.store.access.conglomerate.GenericConglomerateController.delete(Unknown Source)
      at org.apache.derby.impl.sql.execute.RowChangerImpl.deleteRow(Unknown Source)
      at org.apache.derby.impl.sql.execute.DeleteResultSet.collectAffectedRows(Unknown Source)
      at org.apache.derby.impl.sql.execute.DeleteResultSet.open(Unknown Source)
      at org.apache.derby.impl.sql.GenericPreparedStatement.execute(Unknown Source)
      at org.apache.derby.impl.jdbc.EmbedStatement.executeStatement(Unknown Source)
      at org.apache.derby.impl.jdbc.EmbedStatement.execute(Unknown Source)
      at org.apache.derby.impl.jdbc.EmbedStatement.executeUpdate(Unknown Source)
      at GetBlobLocks.testBlobLocks(GetBlobLocks.java:46)
      at GetBlobLocks.main(GetBlobLocks.java:11)
      [C:/kmarsden/repro/getblob] echo $WS

      Attachments

        Issue Links

        Activity

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            Unassigned Unassigned
            kmarsden Katherine Marsden
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Slack

                Issue deployment