You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@pig.apache.org by zhang jianfeng <zj...@gmail.com> on 2009/07/03 18:03:06 UTC

Re: [jira] Commented: (PIG-851) Map type used as return type in UDFs not recognized at all times

Olga, Thank you very much.



On Thu, Jul 2, 2009 at 9:23 AM, Olga Natkovich <ol...@yahoo-inc.com> wrote:

> You need to cancel and resubmit the patch. I just did that for your
> patch.
>
> Olga
>
> -----Original Message-----
> From: Jeff Zhang (JIRA) [mailto:jira@apache.org]
> Sent: Thursday, July 02, 2009 8:44 AM
> To: pig-dev@hadoop.apache.org
> Subject: [jira] Commented: (PIG-851) Map type used as return type in
> UDFs not recognized at all times
>
>
>     [
> https://issues.apache.org/jira/browse/PIG-851?page=com.atlassian.jira.pl
> ugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12726520#ac
> tion_12726520 ]
>
> Jeff Zhang commented on PIG-851:
> --------------------------------
>
> The status of this issue is patch available, how can I submit the patch
> to hudson ?
>
>
>
> > Map type used as return type in UDFs not recognized at all times
> > ----------------------------------------------------------------
> >
> >                 Key: PIG-851
> >                 URL: https://issues.apache.org/jira/browse/PIG-851
> >             Project: Pig
> >          Issue Type: Bug
> >          Components: impl
> >    Affects Versions: 0.3.0
> >            Reporter: Santhosh Srinivasan
> >            Assignee: Jeff Zhang
> >             Fix For: 0.4.0
> >
> >         Attachments: Pig_851_patch.txt
> >
> >
> > When an UDF returns a map and the outputSchema method is not
> overridden, Pig does not figure out the data type. As a result, the type
> is set to unknown resulting in run time failure. An example script and
> UDF follow
> > {code}
> > public class mapUDF extends EvalFunc<Map<Object, Object>> {
> >     @Override
> >     public Map<Object, Object> exec(Tuple input) throws IOException {
> >             return new HashMap<Object, Object>();
> >     }
> > //Note that the outputSchema method is commented out
> > /*
> >     @Override
> >     public Schema outputSchema(Schema input) {
> >         try {
> >             return new Schema(new Schema.FieldSchema(null, null,
> DataType.MAP));
> >         } catch (FrontendException e) {
> >             return null;
> >         }
> >     }
> > */
> > {code}
> > {code}
> > grunt> a = load 'student_tab.data';
> > grunt> b = foreach a generate EXPLODE(1);
> > grunt> describe b;
> > b: {Unknown}
> > grunt> dump b;
> > 2009-06-15 17:59:01,776 [main] INFO
> org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.MapReduceLa
> uncher - Failed!
> > 2009-06-15 17:59:01,781 [main] ERROR org.apache.pig.tools.grunt.Grunt
> - ERROR 2080: Foreach currently does not handle type Unknown
> > {code}
>
> --
> This message is automatically generated by JIRA.
> -
> You can reply to this email to add a comment to the issue online.
>
>