[ 
https://issues.apache.org/jira/browse/PIG-596?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12660351#action_12660351
 ] 

Alan Gates commented on PIG-596:
--------------------------------

Flattening a bag gets rid of two layers of containment, both the bag and the 
tuple.  So the result of FLATTEN(bag(tuple(x, y, z)) is x, y, z not tuple(x, y, 
z).

At this point I believe tuples must be named in the LOAD statement as well as 
in foreach.  I'm not necessarily voting against anonymous tuples.  But I do 
believe Pig Latin is consistent in requiring names for tuples at the moment.

> Anonymous tuples in bags create ParseExceptions
> -----------------------------------------------
>
>                 Key: PIG-596
>                 URL: https://issues.apache.org/jira/browse/PIG-596
>             Project: Pig
>          Issue Type: Bug
>    Affects Versions: types_branch
>            Reporter: David Ciemiewicz
>
> {code}
> One = load 'one.txt' using PigStorage() as ( one: int );
> LabelledTupleInBag = foreach One generate { ( 1, 2 ) } as mybag { tuplelabel: 
> tuple ( a, b ) };
> AnonymousTupleInBag = foreach One generate { ( 2, 3 ) } as mybag { tuple ( a, 
> b ) }; -- Anonymous tuple creates bug
> Tuples = union LabelledTupleInBag, AnonymousTupleInBag;
> dump Tuples;
> {code}
> java.io.IOException: Encountered "{ tuple" at line 6, column 66.
> Was expecting one of:
>     "parallel" ...
>     ";" ...
>     "," ...
>     ":" ...
>     "(" ...
>     "{" <IDENTIFIER> ...
>     "{" "}" ...
>     "[" ...
>     
>         at org.apache.pig.PigServer.parseQuery(PigServer.java:298)
>         at org.apache.pig.PigServer.registerQuery(PigServer.java:263)
>         at 
> org.apache.pig.tools.grunt.GruntParser.processPig(GruntParser.java:439)
>         at 
> org.apache.pig.tools.pigscript.parser.PigScriptParser.parse(PigScriptParser.java:249)
>         at 
> org.apache.pig.tools.grunt.GruntParser.parseStopOnError(GruntParser.java:84)
>         at org.apache.pig.tools.grunt.Grunt.exec(Grunt.java:64)
>         at org.apache.pig.Main.main(Main.java:306)
> Caused by: org.apache.pig.impl.logicalLayer.parser.ParseException: 
> Encountered "{ tuple" at line 6, column 66.
> Why can't there be an anonymous tuple at the top level of a bag?

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to