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

Dag H. Wanvik updated DERBY-5333:
---------------------------------

    Attachment: derby-5333a.diff

Uploading a patch which fixes this issue. There was a remaining case of wait() 
being called by the session thread in the BasicDaemon code which led to the 
interrupt flag being lost. This would only happen if the checkpoint was still 
active when the session thread tried to stop the daemon, hence the sleep in the 
repro pushed it out in time to make it more likely.

> Intermittent assert failure in testInterruptShutdown: thread's interrupted 
> flag lost after shutdown
> ---------------------------------------------------------------------------------------------------
>
>                 Key: DERBY-5333
>                 URL: https://issues.apache.org/jira/browse/DERBY-5333
>             Project: Derby
>          Issue Type: Bug
>          Components: JDBC
>            Reporter: Dag H. Wanvik
>            Assignee: Dag H. Wanvik
>            Priority: Minor
>         Attachments: derby-5333-repro.diff, derby-5333a.diff
>
>
> Saw this while running trunk's InterruptResilienceTest 800 times back-to-back 
> with JDK1.7 b147 looking for DERBY-5312. It is independent of that issue, 
> though: I saw it with both proposed patches for that issue also.
> 1) 
> testInterruptShutdown(org.apache.derbyTesting.functionTests.tests.store.InterruptResilienceTest)junit.f\
> ramework.AssertionFailedError
>         at 
> org.apache.derbyTesting.functionTests.tests.store.InterruptResilienceTest.testInterruptShutdown\
> (InterruptResilienceTest.java:667)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
>         at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>         at 
> org.apache.derbyTesting.junit.BaseTestCase.runBare(BaseTestCase.java:112)
>         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 junit.extensions.TestDecorator.basicRun(TestDecorator.java:24)
>         at junit.extensions.TestSetup$1.protect(TestSetup.java:21)
>         at junit.extensions.TestSetup.run(TestSetup.java:25)

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to