[ https://issues.apache.org/jira/browse/DRILL-2579?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Daniel Barclay (Drill) updated DRILL-2579: ------------------------------------------ Summary: JDBC unit tests will time out after one testcase fails with unexpected results. (was: JDBC unit tests will time out after one testcase failed with unexpected results. ) > JDBC unit tests will time out after one testcase fails with unexpected > results. > --------------------------------------------------------------------------------- > > Key: DRILL-2579 > URL: https://issues.apache.org/jira/browse/DRILL-2579 > Project: Apache Drill > Issue Type: Bug > Components: Tools, Build & Test > Reporter: Jinfeng Ni > Assignee: Daniel Barclay (Drill) > > In unit testcase such as TestJdbcQuery, if there is one failing unit testcase > due to unexpected results, then the rest of unit test cases will hit timeout > issue. See following stack trace: > {code} > java.lang.Exception: test timed out after 40000 milliseconds > at sun.misc.Unsafe.park(Native Method) > at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186) > at > java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:834) > at > java.util.concurrent.locks.AbstractQueuedSynchronizer.doAcquireSharedInterruptibly(AbstractQueuedSynchronizer.java:994) > at > java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireSharedInterruptibly(AbstractQueuedSynchronizer.java:1303) > at java.util.concurrent.CountDownLatch.await(CountDownLatch.java:236) > at org.apache.drill.jdbc.DrillResultSet.execute(DrillResultSet.java:109) > at org.apache.drill.jdbc.DrillResultSet.execute(DrillResultSet.java:49) > at > net.hydromatic.avatica.AvaticaConnection.executeQueryInternal(AvaticaConnection.java:404) > at > net.hydromatic.avatica.AvaticaStatement.executeQueryInternal(AvaticaStatement.java:351) > at > net.hydromatic.avatica.AvaticaStatement.executeQuery(AvaticaStatement.java:78) > at > org.apache.drill.jdbc.test.JdbcAssert$TestDataConnection.returns(JdbcAssert.java:203) > at > org.apache.drill.jdbc.test.TestJdbcQuery.testCaseWith2ThensAndElse(TestJdbcQuery.java:302) > 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.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47) > at > org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12) > at > org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:44) > at > org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17) > at > org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26) > at > org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27) > at > org.junit.internal.runners.statements.FailOnTimeout$StatementThread.run(FailOnTimeout.java:74) > {code} > To re-produce this issue, simply intentionally modify the expected results > for one originally successful unit testcase in TestJdbcQuery.java to make it > fail with unexpected results. You will see the rest of unit test cases start > timeout, after the failure. > Possible cause of this issue : the count down latch is not released, if the > testcase is failling due to unexpected results. -- This message was sent by Atlassian JIRA (v6.3.4#6332)