pig-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Daniel Dai (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (PIG-2004) Incorrect input types passed on to eval function
Date Wed, 20 Apr 2011 18:04:05 GMT

    [ https://issues.apache.org/jira/browse/PIG-2004?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13022264#comment-13022264
] 

Daniel Dai commented on PIG-2004:
---------------------------------

Seems logical plan pick the wrong MAX implementation (should pick DoubleMax)

> Incorrect input types passed on to eval function
> ------------------------------------------------
>
>                 Key: PIG-2004
>                 URL: https://issues.apache.org/jira/browse/PIG-2004
>             Project: Pig
>          Issue Type: Bug
>          Components: impl
>    Affects Versions: 0.9.0
>            Reporter: Vivek Padmanabhan
>             Fix For: 0.9.0
>
>
> The below script fails by throwing a ClassCastException from the MAX udf. The udf expects
the value of the bag supplied to be databyte array, but at run time the udf gets the actual
type, ie Double in this case.  This causes the script execution to fail with exception;
> | Caused by: java.lang.ClassCastException: java.lang.Double cannot be cast to org.apache.pig.data.DataByteArray
> The same script runs properly with Pig 0.8.
> {code}
> A = LOAD 'myinput' as (f1,f2,f3);
> B = foreach A generate f1,f2+f3/1000.0 as doub;
> C = group B by f1;
> D = foreach C generate (long)(MAX(B.doub)) as f4;
> dump D;
> {code}
> myinput
> -------
> a       1000    12345
> b       2000    23456
> c       3000    34567
> a       1500    54321
> b       2500    65432

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

Mime
View raw message