ASF subversion and git services commented on ASTERIXDB-1086:

Commit e89ad03baa16e92b3116e2c49e48d8e7fe6f2789 in asterixdb's branch 
refs/heads/master from [~wangsaeu]
[ https://git-wip-us.apache.org/repos/asf?p=asterixdb.git;h=e89ad03 ]

ASTERIXDB-1081, ASTERIXDB-1086, ASTERIXDB-1246: proper multiple plan paths 

 - ASTERIXDB-1081: Fixed RemoveUnusedAssignAndAggregateRule to reflect multiple 
paths in the plan.
 - ASTERIXDB-1086: Fixed IntroduceProjectsRule to reflect multiples paths in 
the plan.
 - ASTERIXDB-1246: Fixed RemoveRedundantGroupByDecorVarsRule to remove 
                   decor variables before IntroduceProjects rule fires.

Change-Id: I69e055572f024f28a857d4e64916b4806e63c083
Reviewed-on: https://asterix-gerrit.ics.uci.edu/1073
Sonar-Qube: Jenkins <jenk...@fulliautomatix.ics.uci.edu>
Tested-by: Jenkins <jenk...@fulliautomatix.ics.uci.edu>
Reviewed-by: Yingyi Bu <buyin...@gmail.com>
Integration-Tests: Jenkins <jenk...@fulliautomatix.ics.uci.edu>

> IntroduceProjectsRule creates a wrong PROJECT operator when there are 
> multiple paths.
> -------------------------------------------------------------------------------------
>                 Key: ASTERIXDB-1086
>                 URL: https://issues.apache.org/jira/browse/ASTERIXDB-1086
>             Project: Apache AsterixDB
>          Issue Type: Bug
>          Components: AsterixDB, Optimizer
>            Reporter: Taewoo Kim
>            Assignee: Taewoo Kim
>              Labels: with-index-only
> IntroduceProjectsRule introduce a wrong project to filter out a variable that 
> is used in the one of two paths after SPLIT (REPLICATE) operator. In my 
> branch, I am trying to optimize the index-search. In order to implement this, 
> there is an ASSIGN operator and it assigns a variable that is going to be 
> used in the SELECT operator. After ASSIGN, there is SPLIT operator. It 
> divides the path into two - the left path contains the SELECT and the other 
> path contains no operator. Two paths will be merged by UNION operator. The 
> issue is IntroduceProjectRule can't consider all paths at the same time. 
> Thus, when it checks the right path, it introduces a wrong PROJECT operator 
> that filters out one variable in the ASSIGN before SPLIT since it thinks that 
> the variable is not used after ASSIGN operator. In fact, the variable is used 
> in the left path.

This message was sent by Atlassian JIRA

Reply via email to