hadoop-pig-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Daniel Dai (JIRA)" <j...@apache.org>
Subject [jira] Commented: (PIG-1635) Logical simplifier does not simplify away constants under AND and OR; after simplificaion the ordering of operands of AND and OR may get changed
Date Fri, 24 Sep 2010 21:44:33 GMT

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

Daniel Dai commented on PIG-1635:
---------------------------------

+1, patch looks good. Also can you have a review of all connect/disconnect usage in ExpressionSimplifer,
according to [PIG-1644|https://issues.apache.org/jira/browse/PIG-1644]? I see lots of misuse
in other rules.

> Logical simplifier does not simplify away constants under AND and OR; after simplificaion
the ordering of operands of AND and OR may get changed
> ------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: PIG-1635
>                 URL: https://issues.apache.org/jira/browse/PIG-1635
>             Project: Pig
>          Issue Type: Bug
>          Components: impl
>    Affects Versions: 0.8.0
>            Reporter: Yan Zhou
>            Assignee: Yan Zhou
>            Priority: Minor
>             Fix For: 0.8.0
>
>         Attachments: PIG-1635.patch
>
>
> b = FILTER a by (( f1 > 1) AND (1 == 1))
> or 
> b = FILTER a by ((f1 > 1) OR ( 1==0))
> should be simplified to
> b = FILTER a by f1 > 1;
> Regarding ordering change, an example is that 
> b = filter a by ((f1 is not null) AND (f2 is not null));
> Even without possible simplification, the expression is changed to
> b = filter a by ((f2 is not null) AND (f1 is not null));
> Even though the ordering change in this case, and probably in most other cases, does
not create any difference, but for two reasons some users might care about the ordering: if
stateful UDFs are used as operands of AND or OR; and if the ordering is intended by the application
designer to maximize the chances to shortcut the composite boolean evaluation. 

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


Mime
View raw message