[
https://issues.apache.org/jira/browse/PIG-2004?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Thejas M Nair updated PIG-2004:
-------------------------------
Attachment: PIG-2004.1.patch
PIG-2004.1.patch
- Reset fieldschema of all expressions from TypeCheckingExpVisitor constructor,
instead of doing it in each visit function.
- Reset target fieldschema in CastExpression, copied LHS fieldschema in
BinCondExpression so that uid of inner schema is not re-used.
- Fixed a NPE in LogicalSchema that was seen in test cases after this issue was
fixed.
> 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
> Assignee: Thejas M Nair
> Fix For: 0.9.0
>
> Attachments: PIG-2004-0.patch, PIG-2004.1.patch
>
>
> 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