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

Don't use strict endpoint selection for range movements where RF == node count

Agile BoardAttach filesAttach ScreenshotBulk Copy AttachmentsBulk Move AttachmentsVotersWatch issueWatchersCreate sub-taskConvert to sub-taskMoveLinkCloneLabelsUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Low
    • Resolution: Fixed
    • 2.1.0
    • Legacy/Coordination
    • None

    Description

      Post CASSANDRA-2434, we should skip strict endpoint selection for ranges where RF == the number of nodes in the cluster otherwise we hit the following assertion in RangeStreamer.getAllRangesWithStrictSourcesFor

      if (oldEndpoints.size() == strat.getReplicationFactor())
      {
          oldEndpoints.removeAll(newEndpoints);
          assert oldEndpoints.size() == 1 : "Expected 1 endpoint but found " + oldEndpoints.size();
      }
      

      I think this is a fairly niche case, plus there's a workaround in the -Dcassandra.consistent.rangemovement=false option.

      Attachments

        Activity

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            samt Sam Tunnicliffe Assign to me
            samt Sam Tunnicliffe
            Sam Tunnicliffe
            T Jake Luciani
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Slack

                Issue deployment