You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@pig.apache.org by "Koji Noguchi (JIRA)" <ji...@apache.org> on 2013/10/30 16:29:33 UTC

[jira] [Resolved] (PIG-3295) Casting from bytearray failing after Union (even when each field is from a single Loader)

     [ https://issues.apache.org/jira/browse/PIG-3295?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Koji Noguchi resolved PIG-3295.
-------------------------------

       Resolution: Fixed
    Fix Version/s: 0.13.0
     Release Note: Before, LoadCaster after Union was only available when two union-ed relations were from the same Loader with same parameters.  Now, LoadCaster would work for cases when Loaders return the same LoadCaster that only have a default constructor.
     Hadoop Flags: Reviewed

Thanks [~daijy] for your helpful feedback!
Committed to trunk. 

> Casting from bytearray failing after Union (even when each field is from a single Loader)
> -----------------------------------------------------------------------------------------
>
>                 Key: PIG-3295
>                 URL: https://issues.apache.org/jira/browse/PIG-3295
>             Project: Pig
>          Issue Type: Bug
>          Components: parser
>            Reporter: Koji Noguchi
>            Assignee: Koji Noguchi
>            Priority: Minor
>             Fix For: 0.13.0
>
>         Attachments: pig-3295-v01.patch, pig-3295-v02.patch, pig-3295-v03.patch, pig-3295-v04.patch, pig-3295-v05.patch, pig-3295-v06.patch, pig-3295-v07.patch
>
>
> One example
> {noformat}
> A = load 'data1.txt' as line:bytearray;
> B = load 'c1.txt' using TextLoader() as cookie1;
> C = load 'c2.txt' using TextLoader() as cookie2;
> B2 = join A by line, B by cookie1;
> C2 = join A by line, C by cookie2;
> D = union onschema B2,C2; -- D: {A::line: bytearray,B::cookie1: bytearray,C::cookie2: bytearray}
> E = foreach D generate (chararray) line, (chararray) cookie1, (chararray) cookie2;
> dump E;
> {noformat}
> This script fails at runtime with 
> "Caused by: org.apache.pig.backend.executionengine.ExecException: ERROR 1075: Received a bytearray from the UDF. Cannot determine how to convert the bytearray to string."
> This is different from PIG-3293 such that each field in 'D' belongs to a single loader whereas on PIG-3293, it came from multiple loader.



--
This message was sent by Atlassian JIRA
(v6.1#6144)