You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Pavel Pereslegin (Jira)" <ji...@apache.org> on 2025/03/31 13:46:00 UTC
[jira] [Created] (IGNITE-24968) Sql. Fix flaky test ItSqlClientAsynchronousApiTest.cancelQueryDuringExecution
Pavel Pereslegin created IGNITE-24968:
-----------------------------------------
Summary: Sql. Fix flaky test ItSqlClientAsynchronousApiTest.cancelQueryDuringExecution
Key: IGNITE-24968
URL: https://issues.apache.org/jira/browse/IGNITE-24968
Project: Ignite
Issue Type: Bug
Components: sql
Reporter: Pavel Pereslegin
ItSqlClientAsynchronousApiTest.cancelQueryDuringExecution test has flaky failures on TeamCity: https://ci.ignite.apache.org/project.html?projectId=ApacheIgnite3xGradle_Test_IntegrationTests&buildTypeId=&tab=testDetails&testNameId=-5451701318733870746&order=TEST_STATUS_DESC&branch_ApacheIgnite3xGradle_Test_IntegrationTests=__all_branches__&itemsCount=50
{noformat}
java.util.concurrent.TimeoutException: cancelQueryDuringExecution() timed out after 10 minutes
at java.base/java.util.ArrayList.forEach(ArrayList.java:1596)
at java.base/java.util.ArrayList.forEach(ArrayList.java:1596)
Suppressed: org.opentest4j.AssertionFailedError: Unexpected exception type thrown, expected: <org.apache.ignite.sql.SqlException> but was: <java.lang.InterruptedException>
at app//org.apache.ignite.internal.sql.engine.util.SqlTestUtils.assertThrowsSqlException(SqlTestUtils.java:161)
at app//org.apache.ignite.internal.sql.engine.util.SqlTestUtils.assertThrowsSqlException(SqlTestUtils.java:143)
at app//org.apache.ignite.internal.sql.engine.util.SqlTestUtils.expectQueryCancelled(SqlTestUtils.java:570)
at app//org.apache.ignite.internal.sql.api.ItSqlApiBaseTest.cancelQueryDuringExecution(ItSqlApiBaseTest.java:1309)
at java.base@21.0.1/java.lang.reflect.Method.invoke(Method.java:580)
... 2 more
Caused by: java.lang.InterruptedException
at java.base/java.util.concurrent.CompletableFuture.reportGet(CompletableFuture.java:386)
at java.base/java.util.concurrent.CompletableFuture.get(CompletableFuture.java:2073)
at org.apache.ignite.internal.util.IgniteUtils.getInterruptibly(IgniteUtils.java:820)
at org.apache.ignite.internal.sql.SyncResultSetAdapter.sync(SyncResultSetAdapter.java:84)
at org.apache.ignite.internal.sql.SyncResultSetAdapter$IteratorImpl.hasNext(SyncResultSetAdapter.java:125)
at org.apache.ignite.internal.sql.SyncResultSetAdapter.hasNext(SyncResultSetAdapter.java:94)
at org.apache.ignite.internal.sql.api.ItSqlApiBaseTest.lambda$cancelQueryDuringExecution$45(ItSqlApiBaseTest.java:1310)
... 7 more
Suppressed: org.awaitility.core.ConditionTimeoutException: Assertion condition defined as a Lambda expression in org.apache.ignite.internal.sql.api.ItSqlClientAsynchronousApiTest
Expected: is <0>
but: was <1> within 10 seconds.
at app//org.awaitility.core.ConditionAwaiter.await(ConditionAwaiter.java:167)
at app//org.awaitility.core.AssertionCondition.await(AssertionCondition.java:119)
at app//org.awaitility.core.AssertionCondition.await(AssertionCondition.java:31)
at app//org.awaitility.core.ConditionFactory.until(ConditionFactory.java:1160)
at app//org.awaitility.core.ConditionFactory.untilAsserted(ConditionFactory.java:790)
at app//org.apache.ignite.internal.sql.api.ItSqlClientAsynchronousApiTest.checkResourceCleanup(ItSqlClientAsynchronousApiTest.java:54)
at java.base@21.0.1/java.lang.reflect.Method.invoke(Method.java:580)
... 2 more
Caused by: java.lang.AssertionError:
Expected: is <0>
but: was <1>
at org.hamcrest.MatcherAssert.assertThat(MatcherAssert.java:20)
at org.hamcrest.MatcherAssert.assertThat(MatcherAssert.java:6)
at org.apache.ignite.internal.sql.api.ItSqlClientAsynchronousApiTest.lambda$checkResourceCleanup$0(ItSqlClientAsynchronousApiTest.java:54)
at org.awaitility.core.AssertionCondition.lambda$new$0(AssertionCondition.java:53)
at org.awaitility.core.ConditionAwaiter$ConditionPoller.call(ConditionAwaiter.java:248)
at org.awaitility.core.ConditionAwaiter$ConditionPoller.call(ConditionAwaiter.java:235)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
at java.base/java.lang.Thread.run(Thread.java:1583)
{noformat}
It seems that in some cases canceling a query from a thin client doesn't work.
The consequence of the fact that the test failed to kill the query is the failure of the remaining tests in this suite (the resource was not cleared on the server).
{noformat}
ItSqlClientAsynchronousApiTest.cancelStatement
ItSqlClientAsynchronousApiTest.pageSequence
ItSqlClientAsynchronousApiTest.cancelQueryString
{noformat}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)