You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iotdb.apache.org by xi...@apache.org on 2023/02/11 12:00:58 UTC
[iotdb] 08/13: Fix onebyone dependency bug
This is an automated email from the ASF dual-hosted git repository.
xiangweiwei pushed a commit to branch advancePipeline
in repository https://gitbox.apache.org/repos/asf/iotdb.git
commit c49ee73ec698d3b456ed004ba17eb43bff9dc684
Author: Alima777 <wx...@gmail.com>
AuthorDate: Thu Feb 9 22:55:25 2023 +0800
Fix onebyone dependency bug
---
.../apache/iotdb/db/mpp/execution/schedule/task/DriverTask.java | 9 +++++++--
.../iotdb/db/mpp/plan/planner/LocalExecutionPlanContext.java | 2 +-
2 files changed, 8 insertions(+), 3 deletions(-)
diff --git a/server/src/main/java/org/apache/iotdb/db/mpp/execution/schedule/task/DriverTask.java b/server/src/main/java/org/apache/iotdb/db/mpp/execution/schedule/task/DriverTask.java
index b4c501a158..f692451cd1 100644
--- a/server/src/main/java/org/apache/iotdb/db/mpp/execution/schedule/task/DriverTask.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/execution/schedule/task/DriverTask.java
@@ -59,7 +59,7 @@ public class DriverTask implements IDIndexedAccessible {
private long lastEnterReadyQueueTime;
private long lastEnterBlockQueueTime;
- private SettableFuture<?> blockedDependencyDriver = SettableFuture.create();
+ private SettableFuture<?> blockedDependencyDriver = null;
/** Initialize a dummy instance for queryHolder */
public DriverTask() {
@@ -141,10 +141,15 @@ public class DriverTask implements IDIndexedAccessible {
}
public void submitDependencyDriver() {
- this.blockedDependencyDriver.set(null);
+ if (blockedDependencyDriver != null) {
+ this.blockedDependencyDriver.set(null);
+ }
}
public SettableFuture<?> getBlockedDependencyDriver() {
+ if (blockedDependencyDriver == null) {
+ blockedDependencyDriver = SettableFuture.create();
+ }
return blockedDependencyDriver;
}
diff --git a/server/src/main/java/org/apache/iotdb/db/mpp/plan/planner/LocalExecutionPlanContext.java b/server/src/main/java/org/apache/iotdb/db/mpp/plan/planner/LocalExecutionPlanContext.java
index 2926e6a261..afe74593c2 100644
--- a/server/src/main/java/org/apache/iotdb/db/mpp/plan/planner/LocalExecutionPlanContext.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/plan/planner/LocalExecutionPlanContext.java
@@ -145,7 +145,7 @@ public class LocalExecutionPlanContext {
}
public int getPipelineNumber() {
- return nextPipelineId.get();
+ return pipelineDriverFactories.size();
}
public DriverContext getDriverContext() {