You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@skywalking.apache.org by wu...@apache.org on 2018/10/08 14:37:26 UTC
[incubator-skywalking] branch master updated: Fix linear data npe
(#1731)
This is an automated email from the ASF dual-hosted git repository.
wusheng pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-skywalking.git
The following commit(s) were added to refs/heads/master by this push:
new 46c55eb Fix linear data npe (#1731)
46c55eb is described below
commit 46c55ebdb9e616f6e7dfc78771371e8c8e0c8867
Author: Gao Hongtao <ha...@gmail.com>
AuthorDate: Mon Oct 8 22:37:22 2018 +0800
Fix linear data npe (#1731)
* Avoid null point exception
---
.../oap/server/core/analysis/indicator/PxxIndicator.java | 2 +-
.../storage/plugin/elasticsearch/query/MetricQueryEsDAO.java | 7 +++++--
2 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/indicator/PxxIndicator.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/indicator/PxxIndicator.java
index d16f9bf..7dab015 100644
--- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/indicator/PxxIndicator.java
+++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/indicator/PxxIndicator.java
@@ -38,7 +38,7 @@ public abstract class PxxIndicator extends Indicator implements IntValueHolder {
protected static final String VALUE = "value";
protected static final String PRECISION = "precision";
- @Getter @Setter @Column(columnName = VALUE) private int value;
+ @Getter @Setter @Column(columnName = VALUE, isValue = true) private int value;
@Getter @Setter @Column(columnName = PRECISION) private int precision;
@Getter @Setter @Column(columnName = DETAIL_GROUP) private IntKeyLongValueArray detailGroup;
diff --git a/oap-server/server-storage-plugin/storage-elasticsearch-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch/query/MetricQueryEsDAO.java b/oap-server/server-storage-plugin/storage-elasticsearch-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch/query/MetricQueryEsDAO.java
index c9dcf26..ba9d192 100644
--- a/oap-server/server-storage-plugin/storage-elasticsearch-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch/query/MetricQueryEsDAO.java
+++ b/oap-server/server-storage-plugin/storage-elasticsearch-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch/query/MetricQueryEsDAO.java
@@ -89,11 +89,14 @@ public class MetricQueryEsDAO extends EsDAO implements IMetricQueryDAO {
IntValues intValues = new IntValues();
for (MultiGetItemResponse itemResponse : response.getResponses()) {
- int value = ((Number)itemResponse.getResponse().getSource().getOrDefault(valueCName, 0)).intValue();
KVInt kvInt = new KVInt();
kvInt.setId(itemResponse.getId());
- kvInt.setValue(value);
+ kvInt.setValue(0);
+ Map<String, Object> source = itemResponse.getResponse().getSource();
+ if (source != null) {
+ kvInt.setValue(((Number)source.getOrDefault(valueCName, 0)).intValue());
+ }
intValues.getValues().add(kvInt);
}
return intValues;