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 726cc1c2ab IGNITE-23682 Sql. Avoid unnecessary task scheduling for
simple plan (#4831)
726cc1c2ab is described below
commit 726cc1c2abc773834e3f57ac77548f63520c8091
Author: korlov42 <[email protected]>
AuthorDate: Thu Dec 5 12:48:26 2024 +0200
IGNITE-23682 Sql. Avoid unnecessary task scheduling for simple plan (#4831)
---
.../apache/ignite/internal/sql/engine/prepare/KeyValueGetPlan.java | 4 +---
.../ignite/internal/sql/engine/prepare/KeyValueModifyPlan.java | 5 +----
.../apache/ignite/internal/sql/engine/prepare/SelectCountPlan.java | 4 +---
3 files changed, 3 insertions(+), 10 deletions(-)
diff --git
a/modules/sql-engine/src/main/java/org/apache/ignite/internal/sql/engine/prepare/KeyValueGetPlan.java
b/modules/sql-engine/src/main/java/org/apache/ignite/internal/sql/engine/prepare/KeyValueGetPlan.java
index 42eff2814f..1c7f95238a 100644
---
a/modules/sql-engine/src/main/java/org/apache/ignite/internal/sql/engine/prepare/KeyValueGetPlan.java
+++
b/modules/sql-engine/src/main/java/org/apache/ignite/internal/sql/engine/prepare/KeyValueGetPlan.java
@@ -200,9 +200,7 @@ public class KeyValueGetPlan implements ExplainablePlan,
ExecutablePlan {
});
if (firstPageReadyCallback != null) {
- Executor executor = task -> ctx.execute(task::run,
firstPageReadyCallback::onPrefetchComplete);
-
- result.whenCompleteAsync((res, err) ->
firstPageReadyCallback.onPrefetchComplete(err), executor);
+ result.whenComplete((res, err) ->
firstPageReadyCallback.onPrefetchComplete(err));
}
ctx.scheduleTimeout(result);
diff --git
a/modules/sql-engine/src/main/java/org/apache/ignite/internal/sql/engine/prepare/KeyValueModifyPlan.java
b/modules/sql-engine/src/main/java/org/apache/ignite/internal/sql/engine/prepare/KeyValueModifyPlan.java
index 0c647a0549..e2dd818b30 100644
---
a/modules/sql-engine/src/main/java/org/apache/ignite/internal/sql/engine/prepare/KeyValueModifyPlan.java
+++
b/modules/sql-engine/src/main/java/org/apache/ignite/internal/sql/engine/prepare/KeyValueModifyPlan.java
@@ -20,7 +20,6 @@ package org.apache.ignite.internal.sql.engine.prepare;
import java.util.Iterator;
import java.util.List;
import java.util.concurrent.CompletableFuture;
-import java.util.concurrent.Executor;
import java.util.function.Supplier;
import org.apache.calcite.plan.RelOptUtil;
import org.apache.calcite.rex.RexNode;
@@ -136,9 +135,7 @@ public class KeyValueModifyPlan implements ExplainablePlan,
ExecutablePlan {
});
if (firstPageReadyCallback != null) {
- Executor executor = task -> ctx.execute(task::run,
firstPageReadyCallback::onPrefetchComplete);
-
- result.whenCompleteAsync((res, err) ->
firstPageReadyCallback.onPrefetchComplete(err), executor);
+ result.whenComplete((res, err) ->
firstPageReadyCallback.onPrefetchComplete(err));
}
ctx.scheduleTimeout(result);
diff --git
a/modules/sql-engine/src/main/java/org/apache/ignite/internal/sql/engine/prepare/SelectCountPlan.java
b/modules/sql-engine/src/main/java/org/apache/ignite/internal/sql/engine/prepare/SelectCountPlan.java
index a349acd73f..266f9ad59b 100644
---
a/modules/sql-engine/src/main/java/org/apache/ignite/internal/sql/engine/prepare/SelectCountPlan.java
+++
b/modules/sql-engine/src/main/java/org/apache/ignite/internal/sql/engine/prepare/SelectCountPlan.java
@@ -116,9 +116,7 @@ public class SelectCountPlan implements ExplainablePlan,
ExecutablePlan {
}, resultExecutor);
if (firstPageReadyCallback != null) {
- Executor executor = task -> ctx.execute(task::run,
firstPageReadyCallback::onPrefetchComplete);
-
- result.whenCompleteAsync((res, err) ->
firstPageReadyCallback.onPrefetchComplete(err), executor);
+ result.whenComplete((res, err) ->
firstPageReadyCallback.onPrefetchComplete(err));
}
ctx.scheduleTimeout(result);