[
https://issues.apache.org/jira/browse/PIG-847?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12981642#action_12981642
]
Ashutosh Chauhan commented on PIG-847:
--------------------------------------
bq. I propose to remove twoLevelAccess, all bag implicitly contain tuple, and
bag projection implicitly goes to the item inside tuple.
+1 for removal of twoLevelAccess and all the confusion it results in. Will this
decision has any bearing on bags having other types? People have suggested for
having a datatype for a collection of objects (like integer, long etc.) If we
mandate that bags necessarily contain tuples, are we eliminating the
possibility of implementing bags containing other types?
> Setting twoLevelAccessRequired field in a bag schema should not be required
> to access fields in the tuples of the bag
> ---------------------------------------------------------------------------------------------------------------------
>
> Key: PIG-847
> URL: https://issues.apache.org/jira/browse/PIG-847
> Project: Pig
> Issue Type: Improvement
> Affects Versions: 0.3.0
> Reporter: Pradeep Kamath
> Assignee: Daniel Dai
> Fix For: 0.9.0
>
>
> Currently Pig interprets the result type of a relation as a bag. However the
> schema of the relation directly contains the schema describing the fields in
> the tuples for the relation. However when a udf wants to return a bag or if
> there is a bag in input data or if the user creates a bag constant, the
> schema of the bag has one field schema which is that of the tuple. The
> Tuple's schema has the types of the fields. To be able to access the fields
> from the bag directly in such a case by using something like
> <bagname>.<fieldname> or <bag>.<fieldposition>, the schema of the bag should
> have the twoLevelAccess set to true so that pig's type system can get
> traverse the tuple schema and get to the field in question. This is confusing
> - we should try and see if we can avoid needing this extra flag. A possible
> solution is to treat bags the same way - whether they represent relations or
> real bags. Another way is to introduce a special "relation" datatype for the
> result type of a relation and bag type would be used only for true bags. In
> this case, we would always need bag schema to have a tuple schema which would
> describe the fields.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.