Cassandra
  1. Cassandra
  2. CASSANDRA-3833

support arbitrary topology transitions

    Details

    • Type: New Feature New Feature
    • Status: Resolved
    • Priority: Major Major
    • Resolution: Later
    • Fix Version/s: None
    • Component/s: Core
    • Labels:
      None

      Description

      Once we have the locator abstracted (with the gossiper being a
      particular concrete implementation), we want to change the locator
      abstraction to not express changes in ring topology on a per-node
      basis; rather we want to use an abstraction which communicates two
      arbitrary ring states; one state for the read set, and one for the
      write set.

      Once this abstraction is in place, the (pluggable) locator will be
      able to make bulk changes to a ring at once. Main points:

      • Must be careful in handling consistency level during ring
        transitions, such that a given node in the read set corresponds to a
        specific node in the write set. This will impose some restrictions
        on completion of transitions, to avoid code complexity, so it is an
        important point.
      • All code outside of gossip (and any other locator that works
        similarly) will be agnostic about individual changes to nodes, and
        will instead only be notified when new ring states are available (in
        aggregate). This makes the change non-trivial because all code that
        currently is oriented around individual node changes always
        producing a valid ring, will have to be changed.

        Issue Links

          Activity

          No work has yet been logged on this issue.

            People

            • Assignee:
              Peter Schuller
              Reporter:
              Peter Schuller
            • Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development