You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@flink.apache.org by "godfrey he (JIRA)" <ji...@apache.org> on 2019/05/23 09:34:00 UTC

[jira] [Updated] (FLINK-12600) Introduce planner rules to do deterministic rewriting on RelNode

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