Uploaded image for project: 'Cassandra'
  1. Cassandra
  2. CASSANDRA-16411

Fix topology corruption on joining nodes without DC in dtests

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Normal
    • Resolution: Fixed
    • Fix Version/s: 4.0-rc1, 4.0
    • Component/s: Test/dtest/python
    • Labels:
      None

      Description

      Dtests with multi-dc setups don't update the topology properties file of a newly joining node without dc post cluster creation.

      The new node will join dc1 but it's snitch will report the default snitch config as it doesn't get updated == dc1 == all nodes are in dc1 == there are no other dcs. That leads to bootstrap, token, startup,... problems. Let's see an example:

      • populate [1, 1, 1]
      • Node1 sees: dc1/ip1, dc2/ip2 and dc3/ip3
      • Node2 sees: dc1/ip1, dc2/ip2 and dc3/ip3
      • Node3 sees: dc1/ip1, dc2/ip2 and dc3/ip3
      • Add a new Node4
      • Node4 sees: dc1/ip1+ip2+ip3+ip4

      All multi-dc dtests that add a node after cluster creation suffer this problem.

      Solution: When a new node is added without specifying a dc in dtests check for existing dcs. If there are any force to specify one to update the topology file.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                bereng Berenguer Blasi
                Reporter:
                bereng Berenguer Blasi
                Authors:
                Berenguer Blasi
                Reviewers:
                Andres de la Peña, Berenguer Blasi, Ekaterina Dimitrova, Tomasz Lasica
              • Votes:
                0 Vote for this issue
                Watchers:
                5 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 - 0.5h
                  0.5h