[ 
https://issues.apache.org/jira/browse/IMPALA-13344?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17884460#comment-17884460
 ] 

ASF subversion and git services commented on IMPALA-13344:
----------------------------------------------------------

Commit da9400d63ce62e37ea531e7fe6564bf4ac2e0e45 in impala's branch 
refs/heads/master from Michael Smith
[ https://gitbox.apache.org/repos/asf?p=impala.git;h=da9400d63 ]

IMPALA-13302: Restore registering all conjuncts

Reverts an optimization in IMPALA-12164 that skipped registering
remaining conjuncts if they were expected to be removed by a rewrite
rule, then call markConjunctsAssigned on them.

In some cases the rewrite rule is not applied in the first pass, only
during reAnalyze. During the first pass, the Expr would have
registerConjunct called and an ID assigned because there were no
constant false conjuncts.

During reAnalyze, there would be a constant false conjunct after
rewrite, so the Expr would skip registerConjunct but then have
markConjunctsAssigned with its existing ID. Later a new Expr gets the
same ID from registerConjunct and skips markConjunctsAssigned because
it's believed to already be assigned, skipping slot materialization.

Incomplete rule rewriting is handled separately as IMPALA-13344.

Logs tuple id for eqJoinConjunct and cleans up logging calls with
parameter substitution. Also returns more slot context on Precondition.

Adds ExprRewriteRules tests that previously hit the new Precondition in
markConjunctAssigned, and rewrite PlannerTest.

Change-Id: I5959a3b3e18302e00b1d37e5f50410ebdb224cb0
Reviewed-on: http://gerrit.cloudera.org:8080/21684
Reviewed-by: Riza Suminto <riza.sumi...@cloudera.com>
Tested-by: Impala Public Jenkins <impala-public-jenk...@cloudera.com>


> Impala rewrites may be incomplete
> ---------------------------------
>
>                 Key: IMPALA-13344
>                 URL: https://issues.apache.org/jira/browse/IMPALA-13344
>             Project: IMPALA
>          Issue Type: Bug
>          Components: Frontend
>    Affects Versions: Impala 4.0.0
>            Reporter: Michael Smith
>            Assignee: Michael Smith
>            Priority: Major
>             Fix For: Impala 4.5.0
>
>
> Impala's ExprRewriteRules may not be completely applied for complex 
> expressions. Some implementations of ExprRewriteRule don't analyze new Expr 
> they produce, which can lead to other rewrite rules ignoring those Expr. 
> reAnalyze covers some of this by doing a 2nd analysis phase, but that only 
> works for two layers.
> We should analyze any new Expr produced by an ExprRewriteRule.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-all-unsubscr...@impala.apache.org
For additional commands, e-mail: issues-all-h...@impala.apache.org

Reply via email to