You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iotdb.apache.org by ta...@apache.org on 2023/08/21 10:41:47 UTC
[iotdb] 01/01: fix_npe_show_cluster
This is an automated email from the ASF dual-hosted git repository.
tanxinyu pushed a commit to branch fix_npe_show_cluster
in repository https://gitbox.apache.org/repos/asf/iotdb.git
commit 72943a3a0b5f5d8c7dff081939dd8658af8f1ff8
Author: OneSizeFitQuorum <ta...@apache.org>
AuthorDate: Mon Aug 21 18:41:32 2023 +0800
fix_npe_show_cluster
Signed-off-by: OneSizeFitQuorum <ta...@apache.org>
---
.../org/apache/iotdb/confignode/persistence/node/NodeInfo.java | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/persistence/node/NodeInfo.java b/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/persistence/node/NodeInfo.java
index aa5e0ed29c3..4aaf0be926c 100644
--- a/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/persistence/node/NodeInfo.java
+++ b/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/persistence/node/NodeInfo.java
@@ -95,6 +95,8 @@ public class NodeInfo implements SnapshotProcessor {
private final Map<Integer, TDataNodeConfiguration> registeredDataNodes;
private final Map<Integer, TNodeVersionInfo> nodeVersionInfo;
+ private static final TNodeVersionInfo UNKNOWN_NODE_VERSION_INFO =
+ new TNodeVersionInfo("Unknown", "Unknown");
private static final String SNAPSHOT_FILENAME = "node_info.bin";
public NodeInfo() {
@@ -129,6 +131,7 @@ public class NodeInfo implements SnapshotProcessor {
}
}
registeredDataNodes.put(info.getLocation().getDataNodeId(), info);
+ nodeVersionInfo.put(info.getLocation().getDataNodeId(), UNKNOWN_NODE_VERSION_INFO);
result = new TSStatus(TSStatusCode.SUCCESS_STATUS.getStatusCode());
if (nextNodeId.get() < MINIMUM_DATANODE) {
result.setMessage(
@@ -312,6 +315,8 @@ public class NodeInfo implements SnapshotProcessor {
applyConfigNodePlan.getConfigNodeLocation().getConfigNodeId(),
applyConfigNodePlan.getConfigNodeLocation());
SystemPropertiesUtils.storeConfigNodeList(new ArrayList<>(registeredConfigNodes.values()));
+ nodeVersionInfo.put(
+ applyConfigNodePlan.getConfigNodeLocation().getConfigNodeId(), UNKNOWN_NODE_VERSION_INFO);
LOGGER.info(
"Successfully apply ConfigNode: {}. Current ConfigNodeGroup: {}",
applyConfigNodePlan.getConfigNodeLocation(),
@@ -421,7 +426,7 @@ public class NodeInfo implements SnapshotProcessor {
public TNodeVersionInfo getVersionInfo(int nodeId) {
versionInfoReadWriteLock.readLock().lock();
try {
- return nodeVersionInfo.getOrDefault(nodeId, new TNodeVersionInfo("Unknown", "Unknown"));
+ return nodeVersionInfo.getOrDefault(nodeId, UNKNOWN_NODE_VERSION_INFO);
} finally {
versionInfoReadWriteLock.readLock().unlock();
}
@@ -550,6 +555,7 @@ public class NodeInfo implements SnapshotProcessor {
TConfigNodeLocation configNodeLocation = new TConfigNodeLocation();
configNodeLocation.read(protocol);
registeredConfigNodes.put(configNodeId, configNodeLocation);
+ nodeVersionInfo.put(configNodeId, UNKNOWN_NODE_VERSION_INFO);
size--;
}
}
@@ -562,6 +568,7 @@ public class NodeInfo implements SnapshotProcessor {
TDataNodeConfiguration dataNodeInfo = new TDataNodeConfiguration();
dataNodeInfo.read(protocol);
registeredDataNodes.put(dataNodeId, dataNodeInfo);
+ nodeVersionInfo.put(dataNodeId, UNKNOWN_NODE_VERSION_INFO);
size--;
}
}