[
https://issues.apache.org/jira/browse/PIG-1288?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12893001#action_12893001
]
Hadoop QA commented on PIG-1288:
--------------------------------
-1 overall. Here are the results of testing the latest attachment
http://issues.apache.org/jira/secure/attachment/12450538/PIG-1288-4.patch
against trunk revision 979781.
+1 @author. The patch does not contain any @author tags.
+1 tests included. The patch appears to include 17 new or modified tests.
+1 javadoc. The javadoc tool did not generate any warning messages.
+1 javac. The applied patch does not increase the total number of javac
compiler warnings.
+1 findbugs. The patch does not introduce any new Findbugs warnings.
+1 release audit. The applied patch does not increase the total number of
release audit warnings.
-1 core tests. The patch failed core unit tests.
-1 contrib tests. The patch failed contrib unit tests.
Test results:
http://hudson.zones.apache.org/hudson/job/Pig-Patch-h7.grid.sp2.yahoo.net/381/testReport/
Findbugs warnings:
http://hudson.zones.apache.org/hudson/job/Pig-Patch-h7.grid.sp2.yahoo.net/381/artifact/trunk/build/test/findbugs/newPatchFindbugsWarnings.html
Console output:
http://hudson.zones.apache.org/hudson/job/Pig-Patch-h7.grid.sp2.yahoo.net/381/console
This message is automatically generated.
> EvalFunc returnType is wrong for generic subclasses
> ---------------------------------------------------
>
> Key: PIG-1288
> URL: https://issues.apache.org/jira/browse/PIG-1288
> Project: Pig
> Issue Type: Bug
> Components: impl
> Affects Versions: 0.7.0
> Reporter: Daniel Dai
> Assignee: Daniel Dai
> Fix For: 0.8.0
>
> Attachments: PIG-1288-1.patch, PIG-1288-2.patch, PIG-1288-3.patch,
> PIG-1288-4.patch
>
>
> From Garrett Buster Kaminaga:
> The EvalFunc constructor has code to determine the return type of the
> function.
> This walks up the object hierarchy until it encounters EvalFunc, then calls
> getActualTypeArguments and extracts type
> param 0.
> However, if the user class is itself a generic extension of EvalFunc, then
> the returned object is not the correct type,
> but a TypeVariable.
> Example:
> class MyAbstractEvalFunc<T> extends EvalFunc<T> ...
> class MyEvalFunc extends MyAbstractEvalFunc<String> ...
> when MyEvalFunc() is called, inside EvalFunc constructor the return type is
> set to a TypeVariable rather than
> String.class.
> The workaround we've implemented is for the MyAbstractEvalFunc<T> to
> determine *its* type parameters using code
> similar to that in the EvalFunc constructor, and then reset protected data
> member returnType manually in the
> MyAbstractEvalFunc constructor. (though this has the same drawback of not
> working if someone then extends
> MyAbstractEvalFunc)
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.