Repository: ambari Updated Branches: refs/heads/trunk 08d499f9e -> 773541ea0
AMBARI-5510. NPE in ganglia property provider (Eugene Chekanskiy via smohanty) Project: http://git-wip-us.apache.org/repos/asf/ambari/repo Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/773541ea Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/773541ea Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/773541ea Branch: refs/heads/trunk Commit: 773541ea06916d63aa2cd2c701b2759c6bd6384f Parents: 08d499f Author: Sumit Mohanty <[email protected]> Authored: Fri Apr 18 08:39:11 2014 -0700 Committer: Sumit Mohanty <[email protected]> Committed: Fri Apr 18 10:00:55 2014 -0700 ---------------------------------------------------------------------- .../controller/ganglia/GangliaPropertyProvider.java | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ambari/blob/773541ea/ambari-server/src/main/java/org/apache/ambari/server/controller/ganglia/GangliaPropertyProvider.java ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/java/org/apache/ambari/server/controller/ganglia/GangliaPropertyProvider.java b/ambari-server/src/main/java/org/apache/ambari/server/controller/ganglia/GangliaPropertyProvider.java index 8c16bb0..a0c9b3c 100644 --- a/ambari-server/src/main/java/org/apache/ambari/server/controller/ganglia/GangliaPropertyProvider.java +++ b/ambari-server/src/main/java/org/apache/ambari/server/controller/ganglia/GangliaPropertyProvider.java @@ -487,8 +487,16 @@ public abstract class GangliaPropertyProvider extends AbstractPropertyProvider { metric.setHost_name(reader.readLine()); metric.setMetric_name(reader.readLine()); - int time = convertToNumber(reader.readLine()).intValue(); - int step = convertToNumber(reader.readLine()).intValue(); + String timeStr = reader.readLine(); + String stepStr = reader.readLine(); + if (timeStr == null || timeStr.isEmpty() || stepStr == null + || stepStr.isEmpty()) { + LOG.info("Unexpected end of stream reached while getting ganglia " + + "metrics for spec => " + spec); + return Collections.emptySet(); + } + int time = convertToNumber(timeStr).intValue(); + int step = convertToNumber(stepStr).intValue(); String val = reader.readLine(); String lastVal = null;
