Home | About | Sematext search-lucene.com search-hadoop.com
 Search Hadoop and all its subprojects:

Switch to Plain View
Pig, mail # user - Trunk version does not like my macros


+
Alex Rovner 2012-07-26, 14:41
+
Alan Gates 2012-07-26, 20:28
+
Alex Rovner 2012-07-26, 21:09
+
Alex Rovner 2012-07-27, 14:02
Copy link to this message
-
Re: Trunk version does not like my macros
Bill Graham 2012-08-09, 22:41
I'm able to reproduce. Here's a JIRA:
https://issues.apache.org/jira/browse/PIG-2866

The issue is that QueryParserDriver assumes that the script has a file
associated with it. It doesn't handle the case where the script is read
from an InputStream. I'll update the JIRA with a workaround, which is to
write the script to a temp file and pass that to PigServer.

On Fri, Jul 27, 2012 at 7:02 AM, Alex Rovner <[EMAIL PROTECTED]> wrote:

> Alan,
>
> Any idea why it might be failing?
>
> Thanks
>
> Sent from my iPhone
>
> On Jul 26, 2012, at 4:28 PM, Alan Gates <[EMAIL PROTECTED]> wrote:
>
> > Apache mail servers strip attachments.  Could you post your script
> somewhere or send it inline?
> >
> > Alan.
> >
> > On Jul 26, 2012, at 7:41 AM, Alex Rovner wrote:
> >
> >> Gentlemen,
> >>
> >> We have recently attempted to compile and use the latest trunk code and
> have encountered a rather strange issue. Our job which is attached, has
> been working fine on V11 of pig that we have compiled of trunk a while back:
> >>
> >> Apache Pig version 0.11.0-SNAPSHOT (r1227411)
> >> compiled Jan 04 2012, 19:34:06
> >>
> >> When we attempted to switch to the latest trunk version yesterday, we
> have encountered the following exception:
> >>
> >>
> >> Caused by: org.apache.pig.impl.logicalLayer.FrontendException: ERROR
> 1000: Error during parsing. Can not create a Path from a null string
> >>    at org.apache.pig.PigServer$Graph.parseQuery(PigServer.java:1595)
> >>    at org.apache.pig.PigServer$Graph.registerQuery(PigServer.java:1534)
> >>    at org.apache.pig.PigServer.registerQuery(PigServer.java:516)
> >>    at
> org.apache.pig.tools.grunt.GruntParser.processPig(GruntParser.java:987)
> >>    at
> org.apache.pig.tools.pigscript.parser.PigScriptParser.parse(PigScriptParser.java:412)
> >>    at
> org.apache.pig.tools.grunt.GruntParser.parseStopOnError(GruntParser.java:193)
> >>    at org.apache.pig.PigServer.registerScript(PigServer.java:590)
> >>    at org.apache.pig.PigServer.registerScript(PigServer.java:692)
> >>    at org.apache.pig.PigServer.registerScript(PigServer.java:665)
> >>    at
> com.proclivitysystems.etl.job.PIGJobRunner.run(PIGJobRunner.java:244)
> >>    ... 2 more
> >> Caused by: java.lang.IllegalArgumentException: Can not create a Path
> from a null string
> >>    at org.apache.hadoop.fs.Path.checkPathArg(Path.java:78)
> >>    at org.apache.hadoop.fs.Path.<init>(Path.java:90)
> >>    at
> org.apache.pig.impl.io.FileLocalizer.fetchFilesInternal(FileLocalizer.java:766)
> >>    at
> org.apache.pig.impl.io.FileLocalizer.fetchFile(FileLocalizer.java:733)
> >>    at
> org.apache.pig.parser.QueryParserDriver.getMacroFile(QueryParserDriver.java:350)
> >>    at
> org.apache.pig.parser.QueryParserDriver.makeMacroDef(QueryParserDriver.java:406)
> >>    at
> org.apache.pig.parser.QueryParserDriver.expandMacro(QueryParserDriver.java:268)
> >>    at
> org.apache.pig.parser.QueryParserDriver.parse(QueryParserDriver.java:169)
> >>    at org.apache.pig.PigServer$Graph.parseQuery(PigServer.java:1587)
> >>    ... 11 more
> >>
> >>
> >> I have tried to step through to figure out whats going on, and it seems
> like the parser is trying to load our macro named "roas" from a "null" file
> thus causing this issue. As you can see in the script we are not
> referencing any external macros. All macros are defined within the file.
> >>
> >> Any help would be appreciated.
> >>
> >> Thanks
> >> Alex
> >
>

--
*Note that I'm no longer using my Yahoo! email address. Please email me at
[EMAIL PROTECTED] going forward.*