[ 
https://issues.apache.org/jira/browse/PIG-161?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12592466#action_12592466
 ] 

Alan Gates commented on PIG-161:
--------------------------------

Comments on the latest version of physicalOps.patch:

1) In POUserFunc.getNext(Integer) you appear to be doing some kind of cast from 
Comparison func.  There are a couple of problems with this.  One, you don't 
want an if instanceof in a getNext call.  We can't afford to do that a million 
times during processing data.  Two, physical operators should never be doing 
implicit casts.  If we need a cast, it should inserted explicitly by the type 
checker.

2) Several places in getNext are checking if func is null.  The constructor 
should instead guarantee that the function has been called and then no checks 
should be done in getNext or anything it calls.  This code is going to run once 
for every record processed, so we want to remove every instruction we can from 
it.

> Rework physical plan
> --------------------
>
>                 Key: PIG-161
>                 URL: https://issues.apache.org/jira/browse/PIG-161
>             Project: Pig
>          Issue Type: Sub-task
>            Reporter: Alan Gates
>            Assignee: Alan Gates
>         Attachments: arithmeticOperators.patch, incr2.patch, incr3.patch, 
> incr4.patch, incr5.patch, MRCompilerTests_PlansAndOutputs.txt, 
> Phy_AbsClass.patch, physicalOps.patch, physicalOps.patch, physicalOps.patch, 
> podistinct.patch, pogenerate.patch, pogenerate.patch, pogenerate.patch, 
> posort.patch
>
>
> This bug tracks work to rework all of the physical operators as described in 
> http://wiki.apache.org/pig/PigTypesFunctionalSpec

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to