Stamatis Zampetakis created CALCITE-6720:
--------------------------------------------
Summary: Refactor cross product logic in
RelMdUniqueKeys#getPassedThroughCols using Linq4j#product
Key: CALCITE-6720
URL: https://issues.apache.org/jira/browse/CALCITE-6720
Project: Calcite
Issue Type: Improvement
Components: core
Affects Versions: 1.38.0
Reporter: Stamatis Zampetakis
Assignee: Stamatis Zampetakis
Fix For: 1.39.0
The
[RelMdUniqueKeys#getPassedThroughCols|https://github.com/apache/calcite/blob/0eb83b1dc6316cba73c2c49e8fbccfa390333fbe/core/src/main/java/org/apache/calcite/rel/metadata/RelMdUniqueKeys.java#L380]
method exists only for performing a cross product of the various mappings
between input and output "pass through" columns.
The entire method can be replaced by exploiting the built-in Linq4j#product API
and few other utility methods.
After the refactoring the code is easier to follow and potentially more
efficient since the result is computed gradually and we don't have to retain
the entire cross product result in memory.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)