[ 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)