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

PaxosPrepare may add instances to the Electorate that are not in gossip

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

Details

    Description

      org.apache.cassandra.service.paxos.PaxosPrepare.RequestHandler#execute is given a list of electorate from the peer and attempts to compute its own, then replies back with this set.

      On the peer side, we then have the set we sent and the set from the other instance... we then fetch the EndpointState from Gossiper and store into a Map, a map we later attempt to inject into Gossip.

      It is possible that Gossiper does not know about the instance yet, so returns a null; causing a NullPointerException in downstream code.

      Attachments

        Activity

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

          People

            dcapwell David Capwell Assign to me
            dcapwell David Capwell
            David Capwell
            Blake Eggleston
            Votes:
            0 Vote for this issue
            Watchers:
            2 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 - 10m
                10m

                Slack

                  Issue deployment