db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Mike Matrigali (Commented) (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (DERBY-5448) In the 10.8 branch, back out the concurrency improvements introduced by using SequenceUpdaters to allocate identity values.
Date Mon, 10 Oct 2011 16:49:29 GMT

    [ https://issues.apache.org/jira/browse/DERBY-5448?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13124283#comment-13124283
] 

Mike Matrigali commented on DERBY-5448:
---------------------------------------

saw a deadlock at revision 1136020 after about an hour.  But no deadlock involved the system
catalogs.  All were of the following form:
ERROR 40001: A lock could not be obtained due to a deadlock, cycle of locks and waiters is:
Lock : ROW, NSTESTTAB, (682,50)
  Waiting XID : {138765, S} , NSTEST, select max(serialkey) from nstesttab where serialkey
> ?
  Granted XID : {138763, X}
Lock : ROW, NSTESTTAB, (682,53)
  Waiting XID : {138763, S} , NSTEST, select max(serialkey) from nstesttab where serialkey
> ?
  Granted XID : {138765, X}
. The selected victim is XID : 138765.^M
    at org.apache.derby.iapi.error.StandardException.newException(StandardException.java:303)^M
    at org.apache.derby.impl.services.locks.Deadlock.buildException(Deadlock.java:554)^M
    at org.apache.derby.impl.services.locks.ConcurrentLockSet.lockObject(ConcurrentLockSet.java:629)^M
    at org.apache.derby.impl.services.locks.ConcurrentLockSet.zeroDurationLockObject(ConcurrentLockSet.java:871)^M
    at org.apache.derby.impl.services.locks.AbstractPool.zeroDurationlockObject(AbstractPool.java:297)^M
    at org.apache.derby.impl.services.locks.ConcurrentPool.zeroDurationlockObject(ConcurrentPool.java:28)^M
    at org.apache.derby.impl.store.raw.xact.RowLocking2nohold.lockRecordForRead(RowLocking2nohold.java:89)^M
    at org.apache.derby.impl.store.access.heap.HeapController.lockRow(HeapController.java:520)^M
    at org.apache.derby.impl.store.access.heap.HeapController.lockRow(HeapController.java:638)^M
    at org.apache.derby.impl.store.access.btree.index.B2IRowLocking3.lockRowOnPage(B2IRowLocking3.java:309)^M
    at org.apache.derby.impl.store.access.btree.index.B2IRowLocking3._lockScanRow(B2IRowLocking3.java:599)^M
    at org.apache.derby.impl.store.access.btree.index.B2IRowLockingRR.lockScanRow(B2IRowLockingRR.java:105)^M
    at org.apache.derby.impl.store.access.btree.BTreeForwardScan.fetchRows(BTreeForwardScan.java:305)^M
    at org.apache.derby.impl.store.access.btree.BTreeScan.fetchNextGroup(BTreeScan.java:1681)^M
    at org.apache.derby.impl.sql.execute.BulkTableScanResultSet.reloadArray(BulkTableScanResultSet.java:353)^M
    at org.apache.derby.impl.sql.execute.BulkTableScanResultSet.getNextRowCore(BulkTableScanResultSet.java:294)^M
    at org.apache.derby.impl.sql.execute.ProjectRestrictResultSet.getNextRowCore(ProjectRestrictResultSet.java:261)^M
    at org.apache.derby.impl.sql.execute.ScalarAggregateResultSet.getRowFromResultSet(ScalarAggregateResultSet.java:355)^M
    at org.apache.derby.impl.sql.execute.ScalarAggregateResultSet.getNextRowCore(ScalarAggregateResultSet.java:179)^M
    at org.apache.derby.impl.sql.execute.ProjectRestrictResultSet.getNextRowCore(ProjectRestrictResultSet.java:261)^M
    at org.apache.derby.impl.sql.execute.BasicNoPutResultSetImpl.getNextRow(BasicNoPutResultSetImpl.java:478)^M
    at org.apache.derby.impl.jdbc.EmbedResultSet.movePosition(EmbedResultSet.java:430)^M
    at org.apache.derby.impl.jdbc.EmbedResultSet.next(EmbedResultSet.java:374)^M
    at org.apache.derbyTesting.system.nstest.utils.DbUtil.pick_one(DbUtil.java:527)^M
    at org.apache.derbyTesting.system.nstest.utils.DbUtil.delete_one_row(DbUtil.java:440)^M
    at org.apache.derbyTesting.system.nstest.tester.TesterObject.doIUDOperation(TesterObject.java:175)^M
    at org.apache.derbyTesting.system.nstest.tester.Tester2.startTesting(Tester2.java:109)^M
    at org.apache.derbyTesting.system.nstest.NsTest.run(NsTest.java:555)^M
Sun Oct 09 21:04:51 PDT 2011 Thread[Thread 2,5,main] (XID = 138763), (SESSIONID = 20), (DATABASE
= nstestdb), (DRDAID = null), Clean
up action starting^M
Sun Oct 09 21:04:51 PDT 2011 Thread[Thread 2,5,main] (XID = 138763), (SESSIONID = 20), (DATABASE
= nstestdb), (DRDAID = null), Faile
d Statement is: select max(serialkey) from nstesttab where serialkey > ? with 1 parameters
begin parameter #1: 6002 :end parameter ^
M
                
> In the 10.8 branch, back out the concurrency improvements introduced by using SequenceUpdaters
to allocate identity values.
> ---------------------------------------------------------------------------------------------------------------------------
>
>                 Key: DERBY-5448
>                 URL: https://issues.apache.org/jira/browse/DERBY-5448
>             Project: Derby
>          Issue Type: Bug
>          Components: Documentation, SQL
>    Affects Versions: 10.8.2.1
>            Reporter: Rick Hillegas
>             Fix For: 10.8.2.1
>
>         Attachments: derby-5448-01-aa-backoutConcurrencyChanges.diff, derby-5448-02-aa-backoutDocsChanges.diff
>
>
> New errors were seen while running NsTest against the 10.8.2 release candidates. These
errors are recorded as DERBY-5430 and DERBY-5422. The first error is a deadlock which occurs
when inserting into the main table of the test. The second error is a problem clearing the
identity cache. These errors have caused people to lose confidence in the concurrency improvements
introduced by DERBY-4437. We should back the DERBY-4437 changes out of the 10.8 branch and
use the trunk to continue debugging the problems disclosed by NsTest.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Mime
View raw message