[
https://issues.apache.org/jira/browse/CALCITE-4461?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Vladimir Ozerov updated CALCITE-4461:
-------------------------------------
Description:
Currently, some {{Enumerable}} rules work with the base operator classes, such
as {{Join}}, while others have an explicit cast to {{Logical}} counterparts,
such as `LogicalJoin`, {{LogicalProject}}, etc. This makes it impossible to
convert custom non-logical nodes into `Enumerable` using the built-in rules
because such an invocation will fail with a `ClassCastException`.
The proposal is to change all existing rules so that they work with the base
`RelNode` classes.
was:
Currently, some `Enumerable` rules work with the base operator classes, such as
`Join`, while others cast to `Logical` counterparts, such as `LogicalJoin`,
`LogicalProject`, etc.
This makes it impossible to convert custom non-logical nodes into `Enumerable`
using the built-in rules.
The proposal is to change all existing rules so that they work with the base
`RelNode` classes.
> Do not cast to logical node inside Enumerable rules
> ---------------------------------------------------
>
> Key: CALCITE-4461
> URL: https://issues.apache.org/jira/browse/CALCITE-4461
> Project: Calcite
> Issue Type: Task
> Components: core
> Affects Versions: 1.26.0
> Reporter: Vladimir Ozerov
> Assignee: Vladimir Ozerov
> Priority: Minor
> Labels: pull-request-available
> Fix For: 1.27.0
>
> Time Spent: 1h 10m
> Remaining Estimate: 0h
>
> Currently, some {{Enumerable}} rules work with the base operator classes,
> such as {{Join}}, while others have an explicit cast to {{Logical}}
> counterparts, such as `LogicalJoin`, {{LogicalProject}}, etc. This makes it
> impossible to convert custom non-logical nodes into `Enumerable` using the
> built-in rules because such an invocation will fail with a
> `ClassCastException`.
> The proposal is to change all existing rules so that they work with the base
> `RelNode` classes.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)