Pradeep Kamath updated PIG-804:

    Attachment: PIG-804.patch

The root cause was in the parsers, in CastExp(), a getFieldSchema() was being 
called on the target operand of the cast to get the alias. This had a side 
effect of setting up lineage information (i.e. the canonical map in the 
operand). Apparently this place in the code is early for setting up lineage 
information since operators may be added/removed later on due to optimizations. 
This should be done at a later safe point (this change will be tracked in 
PIG-808). For a fix now, unsetFieldSchema() is called to unset the lineage 

> problem with lineage with double map redirection
> ------------------------------------------------
>                 Key: PIG-804
>                 URL: https://issues.apache.org/jira/browse/PIG-804
>             Project: Pig
>          Issue Type: Bug
>    Affects Versions: 0.2.1
>            Reporter: Olga Natkovich
>            Assignee: Pradeep Kamath
>             Fix For: 0.3.0
>         Attachments: PIG-804.patch
> v1       = load     'data' as (s,m,l);
> v2       = foreach  v1  GENERATE
>                         s#'src_spaceid' AS vspaceid ;
> v3       = foreach  v2  GENERATE
>                         (chararray)vspaceid#'foo';
> explain v3;
> The last cast does not have a loader associated with it and as the result the 
> script fails on the backend with the following error: "Received a bytearray 
> from the UDF. Cannot determine how to convert the bytearray to string."

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