From cd2fb513a67a42a8946d8fd57cef987cb0f79287 Mon Sep 17 00:00:00 2001 From: mrproliu <741550557@qq.com> Date: Wed, 11 Mar 2020 19:24:44 +0800 Subject: [PATCH] Fix GraphQL profile queried error when cannot matches any snapshot (#4490) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Fix GraphQL profile queried error when cannot matches any snapshot * fix adding list bug Co-authored-by: Mrproliu Co-authored-by: 吴晟 Wu Sheng --- .../oap/server/core/profile/analyze/ProfileAnalyzer.java | 5 ++++- .../oap/server/core/query/entity/ProfileAnalyzation.java | 4 ++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/profile/analyze/ProfileAnalyzer.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/profile/analyze/ProfileAnalyzer.java index d008e49576..2ac3371ae8 100644 --- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/profile/analyze/ProfileAnalyzer.java +++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/profile/analyze/ProfileAnalyzer.java @@ -88,7 +88,10 @@ public class ProfileAnalyzer { }).flatMap(Collection::stream).map(ProfileStack::deserialize).distinct().collect(Collectors.toList()); // analyze - analyzation.setTrees(analyze(stacks)); + final List trees = analyze(stacks); + if (trees != null) { + analyzation.getTrees().addAll(trees); + } return analyzation; } diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/query/entity/ProfileAnalyzation.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/query/entity/ProfileAnalyzation.java index 2c1c84611f..4285fea3d4 100644 --- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/query/entity/ProfileAnalyzation.java +++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/query/entity/ProfileAnalyzation.java @@ -18,6 +18,7 @@ package org.apache.skywalking.oap.server.core.query.entity; +import java.util.ArrayList; import java.util.List; import lombok.Getter; import lombok.Setter; @@ -33,4 +34,7 @@ public class ProfileAnalyzation { // thread stack dump analyze trees private List trees; + public ProfileAnalyzation() { + this.trees = new ArrayList<>(); + } } -- GitLab