[
https://issues.apache.org/jira/browse/CALCITE-3939?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17119765#comment-17119765
]
Botong Huang commented on CALCITE-3939:
---------------------------------------
[~anha] Understood (we are on the same page for Step 2). But still I don't
think this is a bug.
1. Both before and after the RelSet merge, if there's any other logical relNode
in the same RelSet as the trivial project. It will get a match and the RuleX
will fire on it.
2. Logical project/sort having a non logical CustomScan input is a weird
design. This is the fundamental reason you are seeing this issue. If you really
want it to fire, consider changing the child operand in RuleX to match any
convention. (btw, when you write operand(LogicalSort.class,
operand(RelNode.class, any())) earlier, this should already match the
customScan with a custom convention right?)
> Change UnionEliminatorRule and ProjectRemoveRule to auto pruning
> SubstitutionRule
> ---------------------------------------------------------------------------------
>
> Key: CALCITE-3939
> URL: https://issues.apache.org/jira/browse/CALCITE-3939
> Project: Calcite
> Issue Type: Improvement
> Reporter: Botong Huang
> Priority: Major
> Fix For: 1.23.0
>
> Time Spent: 50m
> Remaining Estimate: 0h
>
> UnionEliminatorRule and ProjectRemoveRule are both pruning rules for a
> RelNode. They can also become SubstitutionRule with autoprune enabled
--
This message was sent by Atlassian Jira
(v8.3.4#803005)