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 D 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

Reply via email to