Andrey Mashenkov created IGNITE-22969:
-----------------------------------------
Summary: Sql. Replanning query on unstable topology
Key: IGNITE-22969
URL: https://issues.apache.org/jira/browse/IGNITE-22969
Project: Ignite
Issue Type: Improvement
Components: sql
Reporter: Andrey Mashenkov
ExecutionTargetFactory implementations calculates execution nodes for the query
fragments and then effectively finds colocated fragments operating with nodes
order (int) instead of nodes ids (string).
To do that, we need to know all available nodes. So, we read LogicalTopology
before mapping query fragments. Then we read assignments for all the tables
used in the query.
On unstable topology, we may observe a node in assignment, which wasn't part of
LogicalTopology at the previous step. E.g. the missed node can be just failed
node or can be just joined node.
In IGNITE-22861 was decide to ignore unknown nodes.
So, possible solution
* left "as is"
* throw an exception when unknown node was found, then restart query planning
phase
* add a relation between LogicalTopology and partition Assignments to avoid
this case
* use single source (e.g. assignments) for getting cluster nodes.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)