This is an automated email from the ASF dual-hosted git repository.
jooger pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/ignite-3.git
The following commit(s) were added to refs/heads/main by this push:
new 8ae12299955 IGNITE-27984 Sql. Stop the cluster after each test in
SqlOutdatedPlanTest (#7667)
8ae12299955 is described below
commit 8ae12299955c9b2f075804e5fae45b904edacfde
Author: Pavel Pereslegin <[email protected]>
AuthorDate: Tue Mar 3 16:14:14 2026 +0300
IGNITE-27984 Sql. Stop the cluster after each test in SqlOutdatedPlanTest
(#7667)
---
.../sql/engine/exec/SqlOutdatedPlanTest.java | 27 +++++++++++++++++++---
1 file changed, 24 insertions(+), 3 deletions(-)
diff --git
a/modules/sql-engine/src/test/java/org/apache/ignite/internal/sql/engine/exec/SqlOutdatedPlanTest.java
b/modules/sql-engine/src/test/java/org/apache/ignite/internal/sql/engine/exec/SqlOutdatedPlanTest.java
index f06e0dccf07..65492b069fe 100644
---
a/modules/sql-engine/src/test/java/org/apache/ignite/internal/sql/engine/exec/SqlOutdatedPlanTest.java
+++
b/modules/sql-engine/src/test/java/org/apache/ignite/internal/sql/engine/exec/SqlOutdatedPlanTest.java
@@ -21,13 +21,16 @@ import static
org.apache.ignite.internal.catalog.CatalogTestUtils.columnParams;
import static org.apache.ignite.internal.sql.SqlCommon.DEFAULT_SCHEMA_NAME;
import static org.apache.ignite.internal.testframework.IgniteTestUtils.await;
import static org.apache.ignite.sql.ColumnType.INT32;
+import static org.hamcrest.CoreMatchers.not;
import static org.hamcrest.MatcherAssert.assertThat;
+import static org.hamcrest.Matchers.empty;
import static org.hamcrest.Matchers.is;
import java.util.Collections;
import java.util.List;
import java.util.concurrent.CompletableFuture;
import java.util.concurrent.Semaphore;
+import java.util.concurrent.TimeUnit;
import java.util.concurrent.atomic.AtomicInteger;
import java.util.concurrent.atomic.AtomicReference;
import java.util.stream.Collectors;
@@ -50,8 +53,10 @@ import
org.apache.ignite.internal.sql.engine.tx.QueryTransactionWrapper;
import org.apache.ignite.internal.sql.engine.tx.QueryTransactionWrapperImpl;
import org.apache.ignite.internal.testframework.BaseIgniteAbstractTest;
import org.apache.ignite.internal.tx.InternalTransaction;
+import org.apache.ignite.internal.util.AsyncCursor.BatchedResult;
import org.awaitility.Awaitility;
import org.jetbrains.annotations.Nullable;
+import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeAll;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
@@ -103,6 +108,11 @@ public class SqlOutdatedPlanTest extends
BaseIgniteAbstractTest {
);
}
+ @AfterEach
+ void stopCluster() throws Exception {
+ cluster.stop();
+ }
+
@ParameterizedTest
@EnumSource(TxType.class)
void planningIsRepeatedUsingTheSameTransaction(TxType type) {
@@ -134,13 +144,15 @@ public class SqlOutdatedPlanTest extends
BaseIgniteAbstractTest {
semaphore2.release();
- await(await(fut).closeAsync());
+ AsyncSqlCursor<InternalSqlRow> cursor = await(fut);
// Planning must be repeated, but only once.
assertThat(prepareServiceSpy.callsCounter.get(), is(2));
// Transaction should be started only once.
assertThat(txContext.startedTxCounter.get(), is(1));
+
+ drainAndCloseCursor(cursor);
}
@Test
@@ -167,13 +179,22 @@ public class SqlOutdatedPlanTest extends
BaseIgniteAbstractTest {
semaphore.release();
- await(await(fut).closeAsync());
+ AsyncSqlCursor<InternalSqlRow> cursor = await(fut);
// Planning must be repeated, but only once.
assertThat(prepareServiceSpy.callsCounter.get(), is(2));
// The plan execution must be repeated using a new transaction.
assertThat(txContext.startedTxCounter.get(), is(2));
+
+ drainAndCloseCursor(cursor);
+ }
+
+ private static void drainAndCloseCursor(AsyncSqlCursor<InternalSqlRow>
cursor) {
+ BatchedResult<InternalSqlRow> result =
await(cursor.requestNextAsync(1024));
+ assertThat(result.items(), is(not(empty())));
+ assertThat(result.hasMore(), is(false));
+ await(cursor.closeAsync());
}
private static CatalogCommand makeAddColumnCommand(String columnName) {
@@ -196,7 +217,7 @@ public class SqlOutdatedPlanTest extends
BaseIgniteAbstractTest {
Semaphore semaphore = prepareBlockHolder.get();
try {
- semaphore.acquire();
+ semaphore.tryAcquire(10, TimeUnit.SECONDS);
} catch (InterruptedException e) {
throw new RuntimeException(e);
} finally {