This is an automated email from the ASF dual-hosted git repository.
jackietien pushed a commit to branch rel/1.0
in repository https://gitbox.apache.org/repos/asf/iotdb.git
The following commit(s) were added to refs/heads/rel/1.0 by this push:
new 337d6a702e [IOTDB-5199] Fix NPE in StorageExector inLoading process
337d6a702e is described below
commit 337d6a702e1d707ef6176f0647e276a5dcadf8b8
Author: Weihao Li <[email protected]>
AuthorDate: Wed Dec 14 16:11:59 2022 +0800
[IOTDB-5199] Fix NPE in StorageExector inLoading process
---
.../java/org/apache/iotdb/commons/partition/ExecutorType.java | 4 ----
.../org/apache/iotdb/commons/partition/StorageExecutor.java | 11 ++++-------
.../planner/distribution/WriteFragmentParallelPlanner.java | 4 +++-
3 files changed, 7 insertions(+), 12 deletions(-)
diff --git
a/node-commons/src/main/java/org/apache/iotdb/commons/partition/ExecutorType.java
b/node-commons/src/main/java/org/apache/iotdb/commons/partition/ExecutorType.java
index e947ad732a..648762f7c4 100644
---
a/node-commons/src/main/java/org/apache/iotdb/commons/partition/ExecutorType.java
+++
b/node-commons/src/main/java/org/apache/iotdb/commons/partition/ExecutorType.java
@@ -33,8 +33,4 @@ public interface ExecutorType {
default TRegionReplicaSet getRegionReplicaSet() {
throw new UnsupportedOperationException(getClass().getName());
}
-
- default void setRegionReplicaSet(TRegionReplicaSet regionReplicaSet) {
- throw new UnsupportedOperationException(getClass().getName());
- }
}
diff --git
a/node-commons/src/main/java/org/apache/iotdb/commons/partition/StorageExecutor.java
b/node-commons/src/main/java/org/apache/iotdb/commons/partition/StorageExecutor.java
index fa517d627d..a99b4dea07 100644
---
a/node-commons/src/main/java/org/apache/iotdb/commons/partition/StorageExecutor.java
+++
b/node-commons/src/main/java/org/apache/iotdb/commons/partition/StorageExecutor.java
@@ -22,13 +22,15 @@ package org.apache.iotdb.commons.partition;
import org.apache.iotdb.common.rpc.thrift.TDataNodeLocation;
import org.apache.iotdb.common.rpc.thrift.TRegionReplicaSet;
+import javax.annotation.Nonnull;
+
import java.util.Objects;
/** StorageExecutor indicates execution of this query need data from
StorageEngine */
public class StorageExecutor implements ExecutorType {
- private TRegionReplicaSet regionReplicaSet;
+ private final TRegionReplicaSet regionReplicaSet;
- public StorageExecutor(TRegionReplicaSet regionReplicaSet) {
+ public StorageExecutor(@Nonnull TRegionReplicaSet regionReplicaSet) {
this.regionReplicaSet = regionReplicaSet;
}
@@ -47,11 +49,6 @@ public class StorageExecutor implements ExecutorType {
return regionReplicaSet;
}
- @Override
- public void setRegionReplicaSet(TRegionReplicaSet regionReplicaSet) {
- this.regionReplicaSet = regionReplicaSet;
- }
-
@Override
public boolean equals(Object o) {
if (this == o) return true;
diff --git
a/server/src/main/java/org/apache/iotdb/db/mpp/plan/planner/distribution/WriteFragmentParallelPlanner.java
b/server/src/main/java/org/apache/iotdb/db/mpp/plan/planner/distribution/WriteFragmentParallelPlanner.java
index 0902dc562f..170844db50 100644
---
a/server/src/main/java/org/apache/iotdb/db/mpp/plan/planner/distribution/WriteFragmentParallelPlanner.java
+++
b/server/src/main/java/org/apache/iotdb/db/mpp/plan/planner/distribution/WriteFragmentParallelPlanner.java
@@ -65,7 +65,9 @@ public class WriteFragmentParallelPlanner implements
IFragmentParallelPlaner {
queryContext.getQueryType(),
queryContext.getTimeOut(),
queryContext.getSession());
- instance.setExecutorAndHost(new
StorageExecutor(split.getRegionReplicaSet()));
+ if (split.getRegionReplicaSet() != null) {
+ instance.setExecutorAndHost(new
StorageExecutor(split.getRegionReplicaSet()));
+ }
ret.add(instance);
}
return ret;