Details
-
Sub-task
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
YARN-2928
-
None
-
Reviewed
Description
This JIRA handles multiple issues.
- If HBase Get does not fetch any rows for the query, we still try to parse the result and read fields. This leads to NPE while reading metrics. We should not attempt to read anything if no row is returned i.e. result is empty.
Found during web UI poc testing.2015-09-29 20:22:32,027 ERROR [95336304@qtp-1814206058-0] reader.TimelineReaderWebServices (TimelineReaderWebServices.java:handleException(199)) - Error while processing REST request java.lang.NullPointerException at org.apache.hadoop.yarn.server.timelineservice.storage.common.ColumnHelper.readResultsWithTimestamps(ColumnHelper.java:176) at org.apache.hadoop.yarn.server.timelineservice.storage.flow.FlowRunColumnPrefix.readResultsWithTimestamps(FlowRunColumnPrefix.java:182) at org.apache.hadoop.yarn.server.timelineservice.storage.TimelineEntityReader.readMetrics(TimelineEntityReader.java:212) at org.apache.hadoop.yarn.server.timelineservice.storage.FlowRunEntityReader.parseEntity(FlowRunEntityReader.java:136) at org.apache.hadoop.yarn.server.timelineservice.storage.TimelineEntityReader.readEntity(TimelineEntityReader.java:137) at org.apache.hadoop.yarn.server.timelineservice.storage.HBaseTimelineReaderImpl.getEntity(HBaseTimelineReaderImpl.java:72) at org.apache.hadoop.yarn.server.timelineservice.reader.TimelineReaderManager.getEntity(TimelineReaderManager.java:93) at org.apache.hadoop.yarn.server.timelineservice.reader.TimelineReaderWebServices.getFlowRun(TimelineReaderWebServices.java:403)
- ResultScanner is not closed in HBase Reader.
- Exception encountered while reading start and end time in FlowRunEntityReader