The only way I can see this happening would be when exec() fails and throws out an exception. Did you take a look at the per task logs to see if there is anything being logged in there? Which Hadoop version are you using? Are you transferring your mapper files using -file option?
Regards Mahadev > -----Original Message----- > From: Andrew McNabb [mailto:[EMAIL PROTECTED] > Sent: Tuesday, January 09, 2007 3:59 PM > To: [email protected] > Subject: Re: Streaming in Hadoop 0.10 > > 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:4 > 55) > > 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
