[
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.