Derby
  1. Derby
  2. DERBY-5223

Thread's interrupted flag not always preserved after Derby returns from JDBC API call

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 10.8.1.2
    • Fix Version/s: 10.8.2.2, 10.9.1.0
    • Component/s: JDBC
    • Labels:
      None
    • Bug behavior facts:
      Regression Test Failure

      Description

      Sometimes we have this this stack trace on the log from SuitesAll:

      .Exception in thread "WorkerThread. Thread#5" junit.framework.AssertionFailedError
      at junit.framework.Assert.fail(Assert.java:47)
      at junit.framework.Assert.assertTrue(Assert.java:20)
      at junit.framework.Assert.assertTrue(Assert.java:27)
      at org.apache.derbyTesting.functionTests.tests.store.InterruptResilienceTest$WorkerThread.run(InterruptResilienceTest.java:430)

      This happens sometimes when the application thread's interrupt flag is set before we enter a Derby API call, but the flag is cleared on return contrary to our specified behavior.

      Cf mention on https://issues.apache.org/jira/browse/DERBY-5081?focusedCommentId=13030155&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13030155

      I can reproduce this every 20 runs or so on Linux with JDK7, but it has been seen also on Windows, so it is not VM specific.

      1. derby-5223.diff
        3 kB
        Dag H. Wanvik
      2. derby-5223.stat
        0.2 kB
        Dag H. Wanvik
      3. derby-5223b.diff
        3 kB
        Dag H. Wanvik
      4. derby-5223b.stat
        0.2 kB
        Dag H. Wanvik

        Issue Links

          Activity

            People

            • Assignee:
              Dag H. Wanvik
              Reporter:
              Dag H. Wanvik
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development