On Tue, Jan 09, 2007 at 12:36:10PM -0700, Andrew McNabb wrote:
> 
> java.lang.NullPointerException
>       at 
> org.apache.hadoop.streaming.PipeMapRed.waitOutputThreads(PipeMapRed.java:455)
>       at 
> org.apache.hadoop.streaming.PipeMapRed.mapRedFinished(PipeMapRed.java:578)
>       at org.apache.hadoop.streaming.PipeMapper.close(PipeMapper.java:109)
>       at org.apache.hadoop.mapred.MapRunner.run(MapRunner.java:51)
>       at org.apache.hadoop.mapred.MapTask.run(MapTask.java:183)
>       at 
> org.apache.hadoop.mapred.TaskTracker$Child.main(TaskTracker.java:1341)
> 

Even when I fixed the bug in my mapper, it still gives this error.  I
can't see anything else in the logs.  I went in and looked at the code.
Line 455 of PipeMapRed.java is:

sim.waitFor();

The Java documentation doesn't say anything about waitFor throwing a
NullPointerException, and I don't see anything about how sim (a Process
object) would get set to null.  Sim is set at line 301:

sim = Runtime.getRuntime().exec(argvSplit, childEnv.toArray());

The Java documentation doesn't say that exec can return null.  I guess
I'm confused about what's causing this exception to be thrown.  Does
anyone have any ideas?  Thanks.


-- 
Andrew McNabb
http://www.mcnabbs.org/andrew/
PGP Fingerprint: 8A17 B57C 6879 1863 DE55  8012 AB4D 6098 8826 6868

Attachment: signature.asc
Description: Digital signature

Reply via email to