[
https://issues.apache.org/jira/browse/MAPREDUCE-2470?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13036814#comment-13036814
]
Robert Joseph Evans commented on MAPREDUCE-2470:
------------------------------------------------
Oh I forgot to add that all of the other downgrade methods in JobClient.java
are similar to Job.getStatus, either they return values from the cached
JobStatus which should never be null except if an IOException was caught and
ignored, so they are not likely to cause an NPE.
> Receiving NPE occasionally on RunningJob.getCounters() call
> -----------------------------------------------------------
>
> Key: MAPREDUCE-2470
> URL: https://issues.apache.org/jira/browse/MAPREDUCE-2470
> Project: Hadoop Map/Reduce
> Issue Type: Bug
> Components: client
> Affects Versions: 0.21.0
> Environment: FreeBSD, Java6, Hadoop r0.21.0
> Reporter: Aaron Baff
> Assignee: Robert Joseph Evans
> Attachments: MAPREDUCE-2470-v1.patch, MAPREDUCE-2470-v2.patch,
> counters_null_data.pcap
>
>
> This is running in a Java daemon that is used as an interface (Thrift) to get
> information and data from MR Jobs. Using JobClient.getJob(JobID) I
> successfully get a RunningJob object (I'm checking for NULL), and then rarely
> I get an NPE when I do RunningJob.getCounters(). This seems to occur after
> the daemon has been up and running for a while, and in the event of an
> Exception, I close the JobClient, set it to NULL, and a new one should then
> be created on the next request for data. Yet, I still seem to be unable to
> fetch the Counters. Below is the stack trace.
> java.lang.NullPointerException
> at org.apache.hadoop.mapred.Counters.downgrade(Counters.java:77)
> at
> org.apache.hadoop.mapred.JobClient$NetworkedJob.getCounters(JobClient.java:381)
> at
> com.telescope.HadoopThrift.service.ServiceImpl.getReportResults(ServiceImpl.java:350)
> at
> com.telescope.HadoopThrift.gen.HadoopThrift$Processor$getReportResults.process(HadoopThrift.java:545)
> at
> com.telescope.HadoopThrift.gen.HadoopThrift$Processor.process(HadoopThrift.java:421)
> at
> org.apache.thrift.server.TNonblockingServer$FrameBuffer.invoke(TNonblockingServer.java:697)
> at
> org.apache.thrift.server.THsHaServer$Invocation.run(THsHaServer.java:317)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
> at java.lang.Thread.run(Thread.java:619)
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira