From 6942ec8fcf189f67a85fb906667039de6e7611c6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=90=B4=E6=99=9F=20Wu=20Sheng?= Date: Thu, 19 Sep 2019 00:23:11 +0800 Subject: [PATCH] Language of instance could be NULL (#3485) * Language of instance could be NULL * Fix style check. * Fix duplicated test cases. --- .../core/query/entity/ServiceInstance.java | 8 +++++--- .../query/MetadataQueryEsDAO.java | 20 ++++++------------- .../jdbc/h2/dao/H2MetadataQueryDAO.java | 20 ++++++------------- 3 files changed, 17 insertions(+), 31 deletions(-) diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/query/entity/ServiceInstance.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/query/entity/ServiceInstance.java index 89bd6d793e..733d5826f5 100644 --- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/query/entity/ServiceInstance.java +++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/query/entity/ServiceInstance.java @@ -18,8 +18,10 @@ package org.apache.skywalking.oap.server.core.query.entity; -import java.util.*; -import lombok.*; +import java.util.ArrayList; +import java.util.List; +import lombok.Getter; +import lombok.Setter; /** * @author peng-yongsheng @@ -29,7 +31,7 @@ public class ServiceInstance { @Setter private String id; @Setter private String name; private final List attributes; - @Setter private Language language; + @Setter private Language language = Language.UNKNOWN; public ServiceInstance() { this.attributes = new ArrayList<>(); diff --git a/oap-server/server-storage-plugin/storage-elasticsearch-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch/query/MetadataQueryEsDAO.java b/oap-server/server-storage-plugin/storage-elasticsearch-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch/query/MetadataQueryEsDAO.java index 63b52fa106..e878018588 100644 --- a/oap-server/server-storage-plugin/storage-elasticsearch-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch/query/MetadataQueryEsDAO.java +++ b/oap-server/server-storage-plugin/storage-elasticsearch-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch/query/MetadataQueryEsDAO.java @@ -29,7 +29,6 @@ import java.util.Map; import org.apache.skywalking.oap.server.core.query.entity.Attribute; import org.apache.skywalking.oap.server.core.query.entity.Database; import org.apache.skywalking.oap.server.core.query.entity.Endpoint; -import org.apache.skywalking.oap.server.core.query.entity.Language; import org.apache.skywalking.oap.server.core.query.entity.LanguageTrans; import org.apache.skywalking.oap.server.core.query.entity.Service; import org.apache.skywalking.oap.server.core.query.entity.ServiceInstance; @@ -255,28 +254,21 @@ public class MetadataQueryEsDAO extends EsDAO implements IMetadataQueryDAO { String value = property.getValue().getAsString(); if (key.equals(LANGUAGE)) { serviceInstance.setLanguage(LanguageTrans.INSTANCE.value(value)); - } - - if (key.equals(OS_NAME)) { + } else if (key.equals(OS_NAME)) { serviceInstance.getAttributes().add(new Attribute(OS_NAME, value)); - } - if (key.equals(HOST_NAME)) { + } else if (key.equals(HOST_NAME)) { serviceInstance.getAttributes().add(new Attribute(HOST_NAME, value)); - } - if (key.equals(PROCESS_NO)) { + } else if (key.equals(PROCESS_NO)) { serviceInstance.getAttributes().add(new Attribute(PROCESS_NO, value)); - } - if (key.equals(IPV4S)) { + } else if (key.equals(IPV4S)) { List ipv4s = ServiceInstanceInventory.PropertyUtil.ipv4sDeserialize(properties.get(IPV4S).getAsString()); for (String ipv4 : ipv4s) { serviceInstance.getAttributes().add(new Attribute(ServiceInstanceInventory.PropertyUtil.IPV4S, ipv4)); } + } else { + serviceInstance.getAttributes().add(new Attribute(key, value)); } - - serviceInstance.getAttributes().add(new Attribute(key, value)); } - } else { - serviceInstance.setLanguage(Language.UNKNOWN); } serviceInstances.add(serviceInstance); diff --git a/oap-server/server-storage-plugin/storage-jdbc-hikaricp-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/jdbc/h2/dao/H2MetadataQueryDAO.java b/oap-server/server-storage-plugin/storage-jdbc-hikaricp-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/jdbc/h2/dao/H2MetadataQueryDAO.java index 0fc0131c0d..5c3eeb0100 100644 --- a/oap-server/server-storage-plugin/storage-jdbc-hikaricp-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/jdbc/h2/dao/H2MetadataQueryDAO.java +++ b/oap-server/server-storage-plugin/storage-jdbc-hikaricp-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/jdbc/h2/dao/H2MetadataQueryDAO.java @@ -32,7 +32,6 @@ import java.util.Map; import org.apache.skywalking.oap.server.core.query.entity.Attribute; import org.apache.skywalking.oap.server.core.query.entity.Database; import org.apache.skywalking.oap.server.core.query.entity.Endpoint; -import org.apache.skywalking.oap.server.core.query.entity.Language; import org.apache.skywalking.oap.server.core.query.entity.LanguageTrans; import org.apache.skywalking.oap.server.core.query.entity.Service; import org.apache.skywalking.oap.server.core.query.entity.ServiceInstance; @@ -287,28 +286,21 @@ public class H2MetadataQueryDAO implements IMetadataQueryDAO { String value = property.getValue().getAsString(); if (key.equals(LANGUAGE)) { serviceInstance.setLanguage(LanguageTrans.INSTANCE.value(value)); - } - - if (key.equals(OS_NAME)) { + } else if (key.equals(OS_NAME)) { serviceInstance.getAttributes().add(new Attribute(OS_NAME, value)); - } - if (key.equals(HOST_NAME)) { + } else if (key.equals(HOST_NAME)) { serviceInstance.getAttributes().add(new Attribute(HOST_NAME, value)); - } - if (key.equals(PROCESS_NO)) { + } else if (key.equals(PROCESS_NO)) { serviceInstance.getAttributes().add(new Attribute(PROCESS_NO, value)); - } - if (key.equals(IPV4S)) { + } else if (key.equals(IPV4S)) { List ipv4s = ServiceInstanceInventory.PropertyUtil.ipv4sDeserialize(properties.get(IPV4S).getAsString()); for (String ipv4 : ipv4s) { serviceInstance.getAttributes().add(new Attribute(ServiceInstanceInventory.PropertyUtil.IPV4S, ipv4)); } + } else { + serviceInstance.getAttributes().add(new Attribute(key, value)); } - - serviceInstance.getAttributes().add(new Attribute(key, value)); } - } else { - serviceInstance.setLanguage(Language.UNKNOWN); } serviceInstances.add(serviceInstance); -- GitLab