db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Kathey Marsden (JIRA)" <j...@apache.org>
Subject [jira] Commented: (DERBY-1764) Rewrite stress.multi as a JUnit test
Date Thu, 03 Jul 2008 20:35:45 GMT

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

Kathey Marsden commented on DERBY-1764:
---------------------------------------

Re running StressMulti10x1 ran ok.  Running StressMultiTest it also seemed to run the expected
length of time, but on the embedded run, I got an assertion that must be a Derby bug:


1) testStressMulti(org.apache.derbyTesting.functionTests.tests.multi.StressMultiTest)java.sql.SQLException:
Java exception: 'ASSERT FAILED transaction table has null entry: org.apache.derby.shared.common.sanity.AssertFailure'.
        at org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(SQLExceptionFactory.java:45)
        at org.apache.derby.impl.jdbc.Util.newEmbedSQLException(Util.java:87)
        at org.apache.derby.impl.jdbc.Util.javaException(Util.java:244)
        at org.apache.derby.impl.jdbc.TransactionResourceImpl.wrapInSQLException(TransactionResourceImpl.java:403)
        at org.apache.derby.impl.jdbc.TransactionResourceImpl.handleException(TransactionResourceImpl.java:346)
        at org.apache.derby.impl.jdbc.EmbedConnection.handleException(EmbedConnection.java:2183)
        at org.apache.derby.impl.jdbc.ConnectionChild.handleException(ConnectionChild.java:81)
        at org.apache.derby.impl.jdbc.EmbedStatement.executeStatement(EmbedStatement.java:1325)
        at org.apache.derby.impl.jdbc.EmbedStatement.execute(EmbedStatement.java:625)
        at <unknown class>.<unknown method>(Unknown Source)
        at org.apache.derbyTesting.functionTests.tests.multi.StressMultiTest$StressMultiRunnable.run(StressMultiTest.jav
a:317)
        at java.lang.Thread.run(Thread.java:803)
Caused by: org.apache.derby.shared.common.sanity.AssertFailure: ASSERT FAILED transaction
table has null entry
        at org.apache.derby.shared.common.sanity.SanityManager.ASSERT(SanityManager.java:120)
        at org.apache.derby.impl.store.raw.xact.TransactionTable.getTransactionInfo(TransactionTable.java:968)
        at org.apache.derby.impl.store.raw.xact.XactFactory.getTransactionInfo(XactFactory.java:991)
        at org.apache.derby.impl.store.raw.RawStore.getTransactionInfo(RawStore.java:1153)
        at org.apache.derby.impl.store.access.RAMAccessManager.getTransactionInfo(RAMAccessManager.java:912)
        at org.apache.derby.impl.services.locks.Deadlock.buildException(Deadlock.java:266)
        at org.apache.derby.impl.services.locks.ConcurrentLockSet.lockObject(ConcurrentLockSet.java:613)
        at org.apache.derby.impl.services.locks.AbstractPool.lockObject(AbstractPool.java:117)
        at org.apache.derby.impl.store.raw.xact.RowLocking3.lockRecordForWrite(RowLocking3.java:248)
        at org.apache.derby.impl.store.access.heap.HeapController.lockRow(HeapController.java:504)
        at org.apache.derby.impl.store.access.heap.HeapController.lockRow(HeapController.java:638)
        at org.apache.derby.impl.store.access.btree.index.B2IRowLocking3.lockRowOnPage(B2IRowLocking3.java:335)
        at org.apache.derby.impl.store.access.btree.index.B2IRowLocking3._lockScanRow(B2IRowLocking3.java:628)
        at org.apache.derby.impl.store.access.btree.index.B2IRowLockingRR.lockScanRow(B2IRowLockingRR.java:112)
        at org.apache.derby.impl.store.access.btree.BTreeForwardScan.fetchRows(BTreeForwardScan.java:304)
        at org.apache.derby.impl.store.access.btree.BTreeScan.fetchNext(BTreeScan.java:1809)
        at org.apache.derby.impl.sql.execute.TableScanResultSet.getNextRowCore(TableScanResultSet.java:680)
        at org.apache.derby.impl.sql.execute.IndexRowToBaseRowResultSet.getNextRowCore(IndexRowToBaseRowResultSet.java:3
73)
        at org.apache.derby.impl.sql.execute.ProjectRestrictResultSet.getNextRowCore(ProjectRestrictResultSet.java:255)
        at org.apache.derby.impl.sql.execute.NormalizeResultSet.getNextRowCore(NormalizeResultSet.java:186)
        at org.apache.derby.impl.sql.execute.DMLWriteResultSet.getNextRowCore(DMLWriteResultSet.java:127)
        at org.apache.derby.impl.sql.execute.UpdateResultSet.collectAffectedRows(UpdateResultSet.java:424)
        at org.apache.derby.impl.sql.execute.UpdateResultSet.open(UpdateResultSet.java:246)
        at org.apache.derby.impl.sql.GenericPreparedStatement.execute(GenericPreparedStatement.java:384)
        at org.apache.derby.impl.jdbc.EmbedStatement.executeStatement(EmbedStatement.java:1235)
        at org.apache.derby.impl.jdbc.EmbedStatement.execute(EmbedStatement.java:625)
        at org.apache.derby.impl.jdbc.EmbedStatement.executeUpdate(EmbedStatement.java:175)
        at org.apache.derbyTesting.functionTests.tests.multi.StressMultiTest$StressMultiRunnable.update(StressMultiTest.
java:471)
        ... 2 more

FAILURES!!!
Tests run: 3,  Failures: 0,  Errors: 1

I was thinking of maybe checking in this test but not adding it to a suite or removing the
old one while we work to stabilize it.  Thoughts?


> Rewrite stress.multi as a JUnit test
> ------------------------------------
>
>                 Key: DERBY-1764
>                 URL: https://issues.apache.org/jira/browse/DERBY-1764
>             Project: Derby
>          Issue Type: Test
>          Components: Test
>            Reporter: Knut Anders Hatlen
>            Assignee: Erlend Birkenes
>         Attachments: derby-1764-derby.log, DERBY-1764-Review.diff, DERBY-1764-V1.diff,
DERBY-1764-V2.diff
>
>
> Currently, stress.multi consists of a number of sql scripts that are run in ij. It often
fails with cryptic error messages, and since it uses ij, there is often no stack trace. It
would be very useful to rewrite the test in JUnit so that we can get better error messages
and stack traces when it fails.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message