[
https://issues.apache.org/jira/browse/HIVE-29738?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Thomas Rebele updated HIVE-29738:
---------------------------------
Description:
Consider for example HiveAggregateJoinTransposeRule. It shares quite a lot of
code with AggregateJoinTransposeRule. Diverging from the Calcite rule
introduces maintenance work, as fixes to the Calcite rule class will need to be
ported to the corresponding rule in Hive.
There are two steps:
* Add fast unit tests for Hive rules and code that have been adapted from a
Calcite equivalent. The tests should have a good coverage for the changes that
have been made in Hive. This step can be done in one or more separate PRs.
* Carry out the actual replacement. Some other code changes may be necessary.
The unit tests from the previous step serve as a quick check whether the
Calcite rule has the same behavior. In some cases the Calcite rule might need
to be extended or made configurable, so a PR to Calcite might be necessary.
> CBO: Replace in-house rules and code with rules and code provided by Calcite
> ----------------------------------------------------------------------------
>
> Key: HIVE-29738
> URL: https://issues.apache.org/jira/browse/HIVE-29738
> Project: Hive
> Issue Type: Improvement
> Reporter: Thomas Rebele
> Priority: Minor
>
> Consider for example HiveAggregateJoinTransposeRule. It shares quite a lot of
> code with AggregateJoinTransposeRule. Diverging from the Calcite rule
> introduces maintenance work, as fixes to the Calcite rule class will need to
> be ported to the corresponding rule in Hive.
> There are two steps:
> * Add fast unit tests for Hive rules and code that have been adapted from a
> Calcite equivalent. The tests should have a good coverage for the changes
> that have been made in Hive. This step can be done in one or more separate
> PRs.
> * Carry out the actual replacement. Some other code changes may be
> necessary. The unit tests from the previous step serve as a quick check
> whether the Calcite rule has the same behavior. In some cases the Calcite
> rule might need to be extended or made configurable, so a PR to Calcite might
> be necessary.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)