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

Add retry mechanism to OTC for non-droppable_verbs

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Normal
    • Resolution: Fixed
    • 1.1.12, 1.2.5, 2.0 beta 1
    • None
    • None
    • Normal

    Description

      Can we add an Ack/Retry around passing merle tree's around in repair? If the following fails, the repair hangs for ever on the coordinating node.

      https://github.com/apache/cassandra/blob/cassandra-1.1.10/src/java/org/apache/cassandra/service/AntiEntropyService.java#L242

                  Message message = TreeResponseVerbHandler.makeVerb(local, validator);
                  if (!validator.request.endpoint.equals(FBUtilities.getBroadcastAddress()))
                      logger.info(String.format("[repair #%s] Sending completed merkle tree to %s for %s", validator.request.sessionid, validator.request.endpoint, validator.request.cf));
                  ms.sendOneWay(message, validator.request.endpoint);
      

      If the message asking for merkle tree's gets lost, coordinating node hangs for ever as well.

      Attachments

        1. 5393.patch
          3 kB
          Jason Brown
        2. 5393-v2.patch
          4 kB
          Jason Brown
        3. 5393-v3.patch
          5 kB
          Jason Brown
        4. 5393-v4.txt
          4 kB
          Jonathan Ellis

        Issue Links

          Activity

            People

              jasobrown Jason Brown
              jjordan Jeremiah Jordan
              Jason Brown
              Jonathan Ellis
              Votes:
              1 Vote for this issue
              Watchers:
              8 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: