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

Sql. Replanning query on unstable topology

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 3.0.0-beta1
    • 3.0
    • 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

              zstan Evgeny Stanilovsky
              amashenkov Andrey Mashenkov
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0h
                  0h
                  Logged:
                  Time Spent - 3h 50m
                  3h 50m