Uploaded image for project: 'Ignite'
  1. Ignite
  2. IGNITE-22969

Sql. Replanning query on unstable topology

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Open
    • Major
    • Resolution: Unresolved
    • None
    • None
    • sql

    Description

      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.

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              amashenkov Andrey Mashenkov
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated: