You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@pig.apache.org by "Olga Natkovich (JIRA)" <ji...@apache.org> on 2011/05/23 17:23:47 UTC
[jira] [Updated] (PIG-2086) grunt parser fails for: load .. as \n
(b:bag{});
[ https://issues.apache.org/jira/browse/PIG-2086?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Olga Natkovich updated PIG-2086:
--------------------------------
Affects Version/s: (was: 0.10)
0.9.0
Fix Version/s: 0.9.0
> grunt parser fails for: load .. as \n (b:bag{});
> -------------------------------------------------
>
> Key: PIG-2086
> URL: https://issues.apache.org/jira/browse/PIG-2086
> Project: Pig
> Issue Type: Bug
> Components: grunt
> Affects Versions: 0.9.0
> Environment: mac 10.5.8
> Reporter: Woody Anderson
> Fix For: 0.9.0
>
>
> this snippet fails:
> {code}
> IN4 = load '$in' using
> com.zzz.Storage() as
> ( inpt:bag{} );
> {code}
> this works (as on same line as semi-colon)
> {code}
> IN4 = load '$in' using
> com.zzz.Storage()
> as ( inpt:bag{} );
> {code}
> this is the grunt error:
> 2011-05-20 20:19:34,934 [main] ERROR org.apache.pig.tools.grunt.Grunt - ERROR 1200: <file loadstore.pig, line 68, column 16> mismatched input ';' expecting RIGHT_PAREN
> this only happens in cases where the types of the fields are complex e.g. bags/tuples
> eg. change the type of _inpt_ to be _chararray_ and it will parse.
> this is very strange! and i spent hours debugging my schema writing skills and reading QueryParser.g before simply trying "as (expr);" on the same line.
> _all_ of my scripts had been written with the lines split the other way (with lots of ctor args and as-clause elements: hence the line breaks), this is not an issue if i don't load complicated types, but it fails in this particular case.
> This is quite unexpected and seems to be undocumented and a bug imho.
> i don't know enough about antlr (i was a javacc person) to make sense of why this would be an issue for the parser b/c the grammar looks good assuming newline is basically whitespace.
> though i can't figure out how newlines are treated in the grammar, there does not seem to be a newline routine ala https://supportweb.cs.bham.ac.uk/documentation/tutorials/docsystem/build/tutorials/antlr/antlr.html
> I'm going to assume the grammar author is much more sophisticated than that tutorial and knows how to fix this.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira