Skip to content

[CALCITE-3819] Prune parent RelNode when merging child RelSet with parent RelSet#1829

Merged
hsyuan merged 1 commit into
apache:masterfrom
hsyuan:CALCITE-3819
Mar 8, 2020
Merged

[CALCITE-3819] Prune parent RelNode when merging child RelSet with parent RelSet#1829
hsyuan merged 1 commit into
apache:masterfrom
hsyuan:CALCITE-3819

Conversation

@hsyuan

@hsyuan hsyuan commented Feb 26, 2020

Copy link
Copy Markdown
Member

Suppose we have 2 RelSets:
RelSet A: rel1
RelSet B: rel2

rel1 is the parent of rel2.

If there is a transformation rule that transform rel1 to rel2, we will merge
RelSet A and B. During merge process, we can safely prune rel1 to avoid further
rule apply on rel1 and reduce search space, more importantly, avoid cyclic
reference.

@hsyuan hsyuan added LGTM-will-merge-soon Overall PR looks OK. Only minor things left. slow-tests-needed labels Mar 7, 2020
…rent RelSet

Suppose we have 2 RelSets:
RelSet A: rel1
RelSet B: rel2

rel1 is the parent of rel2.

If there is a transformation rule that transform rel1 to rel2, we will merge
RelSet A and B. During merge process, we can safely prune rel1 to avoid further
rule apply on rel1 and reduce search space, more importantly, avoid cyclic
reference.
@hsyuan
hsyuan merged commit 0f7dcfb into apache:master Mar 8, 2020
@hsyuan
hsyuan deleted the CALCITE-3819 branch March 8, 2020 00:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

LGTM-will-merge-soon Overall PR looks OK. Only minor things left. slow-tests-needed

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant