[ http://issues.apache.org/jira/browse/DERBY-800?page=comments#action_12367164 ]
Øystein Grøvlen commented on DERBY-800: --------------------------------------- What I have done with this issue is that I have run the test with some tracing to see what caused the lock timeouts. I have not quite got to the bottom of it, but so far it seems to me that it is not a deadlock scenario, but just timeouts due to long queues on the dictionary lock. (See below for more info). Since creating 100 tables in parallel is not a common scenario, I am not sure whether it is worth the effort to attempt fix this so the test runs cleanly. ( The test was made to test a fix (Derby-230) that I do not think is very likely to reoccur.) I have suggested on derby-dev take we should just remove the test from derbyall. No one has protested so I will create a patch to do that. > derbylang/ConcurrentImplicitCreateSchema.java fails intermittently with a > lock timeout > -------------------------------------------------------------------------------------- > > Key: DERBY-800 > URL: http://issues.apache.org/jira/browse/DERBY-800 > Project: Derby > Type: Bug > Components: Test, Regression Test Failure > Versions: 10.2.0.0 > Reporter: Kathey Marsden > Assignee: Øystein Grøvlen > Priority: Critical > > I have seen ConcurrentImplicitCreateSchema.java get a lock timeout > periodically and it occurred in the posted sun tests for build 365391 > http://www.multinet.no/~solberg/public/Apache/Derby/testlog/CYGWIN_NT-5.2_i686-unknown/365391-derbylang_diff.txt > (I don't know how long this link will last. Below is the diff) > ********* Diff file derbylang/derbylang/ConcurrentImplicitCreateSchema.diff > *** Start: ConcurrentImplicitCreateSchema jdk1.5.0_04 derbylang:derbylang > 2006-01-02 20:03:09 *** > 2 del > < Closed connection > 3 del > < Test ConcurrentImplicitCreateSchema PASSED > 3 add > > ERROR 40XL1: A lock could not be obtained within the time requested > > SQL Exception: A lock could not be obtained within the time requested > > SQL Exception: A lock could not be obtained within the time requested > > SQL Exception: A lock could not be obtained within the time requested > > SQL Exception: A lock could not be obtained within the time requested > > ERROR 40XL1: A lock could not be obtained within the time requested > > ERROR 40XL1: A lock could not be obtained within the time requested > > ERROR 40XL1: A lock could not be obtained within the time requested > > ERROR 40XL1: A lock could not be obtained within the time requested > > SQL Exception: A lock could not be obtained within the time requested > > SQL Exception: A lock could not be obtained within the time requested > > ERROR 40XL1: A lock could not be obtained within the time requestedSQL > > Exception: A lock could not be obtained within the time requested > > ERROR 40XL1: A lock could not be obtained within the time requested > > ERROR 40XL1: A lock could not be obtained within the time requested > > at > > org.apache.derby.impl.jdbc.EmbedStatement.execute(EmbedStatement.java:480)SQL > > Exception: A lock could not be obtained within the time requested > > ERROR 40XL1: A lock could not be obtained within the time requested > > SQL Exception: A lock could not be obtained within the time requested > > SQL Exception: A lock could not be obtained within the time requested > > ERROR 40XL1: A lock could not be obtained within the time requested > > ERROR 40XL1: A lock could not be obtained within the time requested > > at > > org.apache.derby.impl.jdbc.EmbedStatement.execute(EmbedStatement.java:550)SQL > > Exception: A lock could not be obtained within the time requested > > ERROR 40XL1: A lock could not be obtained within the time requested > > SQL Exception: A lock could not be obtained within the time requested > > SQL Exception: A lock could not be obtained within the time requested > > ERROR 40XL1: A lock could not be obtained within the time requested > > SQL Exception: A lock could not be obtained within the time requested > > ERROR 40XL1: A lock could not be obtained within the time requested > > at > > org.apache.derby.impl.store.access.btree.index.B2IRowLocking3._lockScan(B2IRowLocking3.java:135)SQL > > Exception: A lock could not be obtained within the time requested > > ERROR 40XL1: A lock could not be obtained within the time requested > > SQL Exception: A lock could not be obtained within the time requested > > ERROR 40XL1: A lock could not be obtained within the time requested > > ERROR 40XL1: A lock could not be obtained within the time requested > > SQL Exception: A lock could not be obtained within the time requested > > SQL Exception: A lock could not be obtained within the time requested > > ERROR 40XL1: A lock could not be obtained within the time requested > > ERROR 40XL1: A lock could not be obtained within the time requestedSQL > > Exception: A lock could not be obtained within the time requested > > SQL Exception: A lock could not be obtained within the time requested > > ERROR 40XL1: A lock could not be obtained within the time requested > > at > > org.apache.derby.iapi.error.StandardException.newException(StandardException.java:301)SQL > > Exception: A lock could not be obtained within the time requested > > ERROR 40XL1: A lock could not be obtained within the time requested > > SQL Exception: A lock could not be obtained within the time requested > > ERROR 40XL1: A lock could not be obtained within the time requested > > SQL Exception: A lock could not be obtained within the time requested > > ERROR 40XL1: A lock could not be obtained within the time requested > > ERROR 40XL1: A lock could not be obtained within the time requested > > SQL Exception: A lock could not be obtained within the time requested > > ERROR 40XL1: A lock could not be obtained within the time requested > > SQL Exception: A lock could not be obtained within the time requested > > SQL Exception: A lock could not be obtained within the time requested > > ERROR 40XL1: A lock could not be obtained within the time requested > > at > > org.apache.derby.impl.store.access.btree.BTreeScan.next(BTreeScan.java:1696)SQL > > Exception: A lock could not be obtained within the time requested > > SQL Exception: A lock could not be obtained within the time requested > > ERROR 40XL1: A lock could not be obtained within the time requestedSQL > > Exception: A lock could not be obtained within the time requested > > SQL Exception: A lock could not be obtained within the time requested > > ERROR 40XL1: A lock could not be obtained within the time requested > > ERROR 40XL1: A lock could not be obtained within the time requested > > ERROR 40XL1: A lock could not be obtained within the time requested > > at > > org.apache.derby.impl.store.access.btree.BTreeScan.positionAtStartForForwardScan(BTreeScan.java:441)SQL > > Exception: A lock could not be obtained within the time requested > > ERROR 40XL1: A lock could not be obtained within the time requested > > at > > org.apache.derby.impl.sql.catalog.DataDictionaryImpl.getColumnDescriptorsScan(DataDictionaryImpl.java:2259)SQL > > Exception: A lock could not be obtained within the time requested > > ERROR 40XL1: A lock could not be obtained within the time requested > > SQL Exception: A lock could not be obtained within the time requested > > ERROR 40XL1: A lock could not be obtained within the time requested > > Closed connection > > Test ConcurrentImplicitCreateSchema FAILED > Test Failed. -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira
