You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by ko...@apache.org on 2022/06/17 13:18:41 UTC
[ignite-3] branch main updated: IGNITE-17171 ItIndexSpoolTest fails when the number of rows is greater than 256 (#884)
This is an automated email from the ASF dual-hosted git repository.
korlov 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 efbb8d3a5 IGNITE-17171 ItIndexSpoolTest fails when the number of rows is greater than 256 (#884)
efbb8d3a5 is described below
commit efbb8d3a5a1b4bd60d90928f41486ff67dc3a064
Author: korlov42 <ko...@gridgain.com>
AuthorDate: Fri Jun 17 16:18:37 2022 +0300
IGNITE-17171 ItIndexSpoolTest fails when the number of rows is greater than 256 (#884)
---
.../ignite/internal/sql/engine/ItIndexSpoolTest.java | 2 --
.../ignite/internal/sql/engine/util/CursorUtils.java | 14 +++++++++-----
2 files changed, 9 insertions(+), 7 deletions(-)
diff --git a/modules/runner/src/integrationTest/java/org/apache/ignite/internal/sql/engine/ItIndexSpoolTest.java b/modules/runner/src/integrationTest/java/org/apache/ignite/internal/sql/engine/ItIndexSpoolTest.java
index c809e1237..2099baa6d 100644
--- a/modules/runner/src/integrationTest/java/org/apache/ignite/internal/sql/engine/ItIndexSpoolTest.java
+++ b/modules/runner/src/integrationTest/java/org/apache/ignite/internal/sql/engine/ItIndexSpoolTest.java
@@ -29,14 +29,12 @@ import org.apache.ignite.schema.definition.ColumnType;
import org.apache.ignite.schema.definition.TableDefinition;
import org.apache.ignite.table.Table;
import org.junit.jupiter.api.AfterEach;
-import org.junit.jupiter.api.Disabled;
import org.junit.jupiter.params.ParameterizedTest;
import org.junit.jupiter.params.provider.ValueSource;
/**
* Index spool test.
*/
-@Disabled("https://issues.apache.org/jira/browse/IGNITE-15655")
public class ItIndexSpoolTest extends AbstractBasicIntegrationTest {
private static final IgniteLogger LOG = IgniteLogger.forClass(AbstractBasicIntegrationTest.class);
diff --git a/modules/runner/src/integrationTest/java/org/apache/ignite/internal/sql/engine/util/CursorUtils.java b/modules/runner/src/integrationTest/java/org/apache/ignite/internal/sql/engine/util/CursorUtils.java
index 7f32222bf..d89d852a0 100644
--- a/modules/runner/src/integrationTest/java/org/apache/ignite/internal/sql/engine/util/CursorUtils.java
+++ b/modules/runner/src/integrationTest/java/org/apache/ignite/internal/sql/engine/util/CursorUtils.java
@@ -21,7 +21,9 @@ import static org.apache.ignite.internal.testframework.IgniteTestUtils.await;
import java.util.ArrayList;
import java.util.List;
-import java.util.function.Consumer;
+import java.util.concurrent.CompletableFuture;
+import java.util.concurrent.CompletionStage;
+import java.util.function.Function;
import java.util.stream.Collectors;
import java.util.stream.StreamSupport;
import org.apache.ignite.internal.sql.engine.AsyncCursor;
@@ -52,18 +54,20 @@ public class CursorUtils {
List<T> res = new ArrayList<>();
int batchSize = 256;
- var consumer = new Consumer<BatchedResult<T>>() {
+ var consumer = new Function<BatchedResult<T>, CompletionStage<BatchedResult<T>>>() {
@Override
- public void accept(BatchedResult<T> br) {
+ public CompletionStage<BatchedResult<T>> apply(BatchedResult<T> br) {
res.addAll(br.items());
if (br.hasMore()) {
- cur.requestNextAsync(batchSize).thenAccept(this);
+ return cur.requestNextAsync(batchSize).thenCompose(this);
}
+
+ return CompletableFuture.completedFuture(br);
}
};
- await(cur.requestNextAsync(batchSize).thenAccept(consumer));
+ await(cur.requestNextAsync(batchSize).thenCompose(consumer));
await(cur.closeAsync());
return res;