This is an automated email from the ASF dual-hosted git repository.

duanzhengqiang pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/shardingsphere.git


The following commit(s) were added to refs/heads/master by this push:
     new 903dcfa  Fix NPE when load compute node labels (#14524)
903dcfa is described below

commit 903dcfa05da9f169ad8b9c866a21be602616295e
Author: Haoran Meng <[email protected]>
AuthorDate: Wed Jan 5 11:51:08 2022 +0800

    Fix NPE when load compute node labels (#14524)
    
    Co-authored-by: menghaoran <[email protected]>
---
 .../shardingsphere/mode/metadata/persist/MetaDataPersistService.java  | 2 +-
 .../mode/metadata/persist/service/ComputeNodePersistService.java      | 4 +++-
 2 files changed, 4 insertions(+), 2 deletions(-)

diff --git 
a/shardingsphere-mode/shardingsphere-mode-core/src/main/java/org/apache/shardingsphere/mode/metadata/persist/MetaDataPersistService.java
 
b/shardingsphere-mode/shardingsphere-mode-core/src/main/java/org/apache/shardingsphere/mode/metadata/persist/MetaDataPersistService.java
index e6a6835..90083c4 100644
--- 
a/shardingsphere-mode/shardingsphere-mode-core/src/main/java/org/apache/shardingsphere/mode/metadata/persist/MetaDataPersistService.java
+++ 
b/shardingsphere-mode/shardingsphere-mode-core/src/main/java/org/apache/shardingsphere/mode/metadata/persist/MetaDataPersistService.java
@@ -99,7 +99,7 @@ public final class MetaDataPersistService {
     }
     
     /**
-     * load compute node instances by labels.
+     * Load compute node instances by labels.
      * 
      * @param labels collection of label
      * @return collection of compute node instance
diff --git 
a/shardingsphere-mode/shardingsphere-mode-core/src/main/java/org/apache/shardingsphere/mode/metadata/persist/service/ComputeNodePersistService.java
 
b/shardingsphere-mode/shardingsphere-mode-core/src/main/java/org/apache/shardingsphere/mode/metadata/persist/service/ComputeNodePersistService.java
index 09e2568..d2c7c00 100644
--- 
a/shardingsphere-mode/shardingsphere-mode-core/src/main/java/org/apache/shardingsphere/mode/metadata/persist/service/ComputeNodePersistService.java
+++ 
b/shardingsphere-mode/shardingsphere-mode-core/src/main/java/org/apache/shardingsphere/mode/metadata/persist/service/ComputeNodePersistService.java
@@ -18,6 +18,7 @@
 package org.apache.shardingsphere.mode.metadata.persist.service;
 
 import com.google.common.base.Splitter;
+import com.google.common.base.Strings;
 import lombok.RequiredArgsConstructor;
 import org.apache.shardingsphere.infra.instance.ComputeNodeInstance;
 import org.apache.shardingsphere.infra.yaml.engine.YamlEngine;
@@ -53,7 +54,8 @@ public final class ComputeNodePersistService {
      * @return collection of label
      */
     public Collection<String> loadInstanceLabels(final String instanceId) {
-        return 
YamlEngine.unmarshal(repository.get(ComputeNode.getInstanceLabelNodePath(instanceId)),
 Collection.class);
+        String yamlContent = 
repository.get(ComputeNode.getInstanceLabelNodePath(instanceId));
+        return Strings.isNullOrEmpty(yamlContent) ? new ArrayList<>() : 
YamlEngine.unmarshal(yamlContent, Collection.class);
     }
     
     /**

Reply via email to