[
https://issues.apache.org/jira/browse/IGNITE-20246?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Andrey Mashenkov updated IGNITE-20246:
--------------------------------------
Labels: ignite-3 tech-debt (was: ignite-3)
> Sql. Decouple distribution trait and function.
> ----------------------------------------------
>
> Key: IGNITE-20246
> URL: https://issues.apache.org/jira/browse/IGNITE-20246
> Project: Ignite
> Issue Type: Improvement
> Components: sql
> Reporter: Andrey Mashenkov
> Priority: Major
> Labels: ignite-3, tech-debt
> Fix For: 3.0.0-beta2
>
>
> Motivation.
> As for now, we have IgniteDistribution trait with DistributionFunction inside.
> In fact, this "function" is a factory for factory for functions, but should
> be just a logical node.
> `IgniteDistribution.destination()` method accepts hash-function factory
> regardless if the function hash-based or not. LogicalRelImplementor could
> convert this logical node into a physcal node, which can calculates
> destinations, and make hash function part of this physcal node.
> Let's
> 1. Move `gniteDistribution.destination()` method to some another class,
> which will be a "destination factory" and e.g. put it into a table instead of
> `distribution`.
> 2. Replace HashFunctionFactory with RowHandler in `destination()` method
> signature.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)