[ 
https://issues.apache.org/jira/browse/FLINK-12600?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

godfrey he updated FLINK-12600:
-------------------------------
    Description: 
This issue aims to introduce planner rules to to do deterministic rewriting on 
RelNode , rules include:
1. {{FlinkLimit0RemoveRule}} that rewrites `limit 0` to empty {{Values}}
2. {{FlinkRewriteSubQueryRule}} that rewrites a {{Filter}} with condition: 
`(select count( *) from T) > 0` to a {{Filter}} with condition: `exists(select 
* from T)`
3. {{ReplaceIntersectWithSemiJoinRule}} that rewrites distinct {{Intersect}} to 
a distinct {{Aggregate}} on a SEMI {{Join}}.
4. {{ReplaceMinusWithAntiJoinRule}} that rewrite distinct {{Minus}} to a 
distinct {{Aggregate}} on an ANTI {{Join}}.

  was:
This issue aims to introduce planner rules to to do deterministic rewriting on 
RelNode , rules include:
1. {{FlinkLimit0RemoveRule}} that rewrites `limit 0` to empty {{Values}}
2. {{FlinkRewriteSubQueryRule}} that rewrites a {{Filter}} with condition: 
`(select count(*) from T) > 0` to a {{Filter}} with condition: `exists(select * 
from T)`
3. {{ReplaceIntersectWithSemiJoinRule}} that rewrites distinct {{Intersect}} to 
a distinct {{Aggregate}} on a SEMI {{Join}}.
4. {{ReplaceMinusWithAntiJoinRule}} that rewrite distinct {{Minus}} to a 
distinct {{Aggregate}} on an ANTI {{Join}}.


> Introduce planner rules to do deterministic rewriting on RelNode 
> -----------------------------------------------------------------
>
>                 Key: FLINK-12600
>                 URL: https://issues.apache.org/jira/browse/FLINK-12600
>             Project: Flink
>          Issue Type: New Feature
>          Components: Table SQL / Planner
>            Reporter: godfrey he
>            Assignee: godfrey he
>            Priority: Major
>
> This issue aims to introduce planner rules to to do deterministic rewriting 
> on RelNode , rules include:
> 1. {{FlinkLimit0RemoveRule}} that rewrites `limit 0` to empty {{Values}}
> 2. {{FlinkRewriteSubQueryRule}} that rewrites a {{Filter}} with condition: 
> `(select count( *) from T) > 0` to a {{Filter}} with condition: 
> `exists(select * from T)`
> 3. {{ReplaceIntersectWithSemiJoinRule}} that rewrites distinct {{Intersect}} 
> to a distinct {{Aggregate}} on a SEMI {{Join}}.
> 4. {{ReplaceMinusWithAntiJoinRule}} that rewrite distinct {{Minus}} to a 
> distinct {{Aggregate}} on an ANTI {{Join}}.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to