[
https://issues.apache.org/jira/browse/PIG-1765?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12971308#action_12971308
]
Alan Gates commented on PIG-1765:
---------------------------------
This is going to be very non-intuitive to people. Based on 20+ years of
mathematics most programmers expect x = (x) to be true. We are saying in this
case it isn't in this situation. I know this is not a mathematical expression,
but many people will not see the difference. I agree consistent syntax between
load as and foreach as is greatly desirable, so requiring the name or keyword
tuple in the foreach as is not good. So maybe there is no way around this.
But we should at least make sure the documentation is very specific, and maybe
even issue warnings in the (x) case, to make sure people know.
> as_clause in foreach statement should differentiate between simple type and
> type within tuple
> ---------------------------------------------------------------------------------------------
>
> Key: PIG-1765
> URL: https://issues.apache.org/jira/browse/PIG-1765
> Project: Pig
> Issue Type: Sub-task
> Reporter: Thejas M Nair
> Fix For: 0.9.0
>
>
> In new parser changes, the following statements are treated as same -
> f = foreach l generate a as aa :int; -- here the column is now called aa
> and has type int
> f = foreach l generate a as (aa :int); -- this should mean that the column
> has type "tuple with column aa of type int"
> With old parser the 2nd statement results in syntax error, which is fine,
> because it requires name part .
> The parenthesis represent tuple in pig. We should deprecate support for load
> statement that takes schema without the parenthesis part , such as following
> example -
> l = load 'x' as a:int -- It should be as (a :int) , it is treated as such but
> this is inconsistent syntax.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.