You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@pig.apache.org by "Rohini Palaniswamy (JIRA)" <ji...@apache.org> on 2015/03/25 22:13:53 UTC
[jira] [Comment Edited] (PIG-4458) Support UDFs in a FOREACH Before
a Merge Join
[ https://issues.apache.org/jira/browse/PIG-4458?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14380787#comment-14380787 ]
Rohini Palaniswamy edited comment on PIG-4458 at 3/25/15 9:13 PM:
------------------------------------------------------------------
ant test should have failed. i.e what failed for me. piggybank is built after pig and is not a dependency for pig. So installed in maven does not matter.
was (Author: rohini):
ant test should have failed. i.e what failed for me. piggybank is built after pig and is not a dependency for pig. Even if it was maven instead of ant, it would be the same.
> Support UDFs in a FOREACH Before a Merge Join
> ---------------------------------------------
>
> Key: PIG-4458
> URL: https://issues.apache.org/jira/browse/PIG-4458
> Project: Pig
> Issue Type: New Feature
> Reporter: William Watson
> Assignee: William Watson
> Fix For: 0.15.0
>
> Attachments: PIG-4458-FixTestFailure.patch, PIG-4458.04.remove-merge-join-udf-restriction.patch, PIG-4458.05.remove-merge-join-udf-restriction.patch
>
>
> Right now, the MapSideMergeValidator outright rejects any foreach that has a UDF in it:
> {code}
> private boolean isAcceptableForEachOp(Operator lo) throws LogicalToPhysicalTranslatorException {
> if (lo instanceof LOForEach) {
> OperatorPlan innerPlan = ((LOForEach) lo).getInnerPlan();
> validateMapSideMerge(innerPlan.getSinks(), innerPlan);
> return !containsUDFs((LOForEach) lo);
> } else {
> return false;
> }
> }
> {code}
> There is a TODO for this later on in that same class (inside containsUDFs):
> {code}
> // TODO (dvryaboy): in the future we could relax this rule by tracing what fields
> // are being passed into the UDF, and only refusing if the UDF is working on the
> // join key. Transforms of other fields should be ok.
> {code}
> We should do the TODO and relax this requirement or just remove it altogether
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)