[
https://issues.apache.org/jira/browse/PIG-865?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12725361#action_12725361
]
Pradeep Kamath commented on PIG-865:
------------------------------------
Looks good.
Minor comment: Since the constant expression has type Tuple for the fragment
input, the following code in getNext() should change to be consistent :
{code}
ce.setValue(inp.result);
to
ce.setValue((Tuple)(inp.result));
{code}
Not related to the patch but also related to performance, the following code:
long time1 = System.currentTimeMillis();
long time2 = System.currentTimeMillis();
log.debug("Hash Table built. Time taken: " + (time2-time1));
can be removed since this seems like it was left over from debugging in the
initial checkin and can be cleaned up.
> Performance: Unnnecessary computation in FRJoin
> -----------------------------------------------
>
> Key: PIG-865
> URL: https://issues.apache.org/jira/browse/PIG-865
> Project: Pig
> Issue Type: Improvement
> Components: impl
> Affects Versions: 0.3.0
> Reporter: Ashutosh Chauhan
> Priority: Minor
> Fix For: 0.4.0
>
> Attachments: pig-865.patch
>
>
> In POFRJoin implementation POLocalRearrange is used to extract join keys from
> the input tuples. If keys match then to perform actual join input tuples are
> fed to Foreach which does a cross on its inputs. After keys are extracted
> using POLocalRearrange output; function getValueTuple(POLocalRearrange lr,
> Tuple tuple) is called to reconstruct the input tuple. It seems that this
> function call is unnecessary since we already have input tuple at that time.
> This is not a bug, but since this function would get called for every tuple,
> if it is eliminated, it should certainly help to improve performance.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.