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)