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