db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Knut Anders Hatlen (JIRA)" <j...@apache.org>
Subject [jira] Updated: (DERBY-2799) Intermittent failure in lang/deadlockMode.java
Date Sun, 10 Jun 2007 12:41:25 GMT

     [ https://issues.apache.org/jira/browse/DERBY-2799?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Knut Anders Hatlen updated DERBY-2799:
--------------------------------------

    Attachment: derby-2799.diff

The attached patch fixes the problem by adding another synchronization point to the test.
When a test has printed "Starting thread", it now waits until all other threads have done
the same before it continues. The patch also adds a main method to LangHarnessJavaTest, similar
to the one in LangScripts, to allow easier testing of a single harness test.

> Intermittent failure in lang/deadlockMode.java
> ----------------------------------------------
>
>                 Key: DERBY-2799
>                 URL: https://issues.apache.org/jira/browse/DERBY-2799
>             Project: Derby
>          Issue Type: Bug
>          Components: Regression Test Failure, Test
>    Affects Versions: 10.3.0.0
>            Reporter: Knut Anders Hatlen
>            Priority: Minor
>         Attachments: derby-2799.diff
>
>
> I sometimes see the deadlockMode test fail with this error:
> There was 1 failure:
> 1) deadlockMode(org.apache.derbyTesting.functionTests.tests.lang.LangHarnessJavaTest)junit.framework.ComparisonFailure:
Output at line 18 expected:<[Starting t]hread> but was:<[Done T]hread>
>         at org.apache.derbyTesting.functionTests.util.CanonTestCase.compareCanon(CanonTestCase.java:100)
>         at org.apache.derbyTesting.functionTests.util.HarnessJavaTest.runTest(HarnessJavaTest.java:91)
>         at org.apache.derbyTesting.junit.BaseTestCase.runBare(BaseTestCase.java:88)
>         at junit.extensions.TestDecorator.basicRun(TestDecorator.java:24)
>         at junit.extensions.TestSetup$1.protect(TestSetup.java:21)
>         at junit.extensions.TestSetup.run(TestSetup.java:25)
>         at junit.extensions.TestDecorator.basicRun(TestDecorator.java:24)
>         at junit.extensions.TestSetup$1.protect(TestSetup.java:21)
>         at junit.extensions.TestSetup.run(TestSetup.java:25)
>         at org.apache.derbyTesting.junit.BaseTestSetup.run(BaseTestSetup.java:57)
>         at junit.extensions.TestDecorator.basicRun(TestDecorator.java:24)
>         at junit.extensions.TestSetup$1.protect(TestSetup.java:21)
>         at junit.extensions.TestSetup.run(TestSetup.java:25)
>         at org.apache.derbyTesting.junit.BaseTestSetup.run(BaseTestSetup.java:57)
>         at org.apache.derbyTesting.functionTests.tests.lang.LangHarnessJavaTest.main(LangHarnessJavaTest.java:102)
> Similar failures have also been seen in the nightly testing, for instance <URL:http://dbtg.thresher.com/derby/test/trunk15/jvm1.5/testing/testlog/Linux-2.6.17-1.2174_FC5_i686-i686/484695-derbyall_diff.txt>.
> It looks like a timing issue between the threads in the test. The test starts 20 threads,
and each thread prints "Starting thread" when it starts and "Done Thread" when it ends. If
a thread finishes before all threads have started, the lines in the output are mixed, and
the test 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