Uploaded image for project: 'Ratis'
  1. Ratis
  2. RATIS-601

Fix NotLeaderException handling

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • None
    • 0.4.0
    • client, server
    • None

    Description

      There are 3 issues with leader election

      a) OrderedAsync#sendRequest doesn't handle NotLeaderException
      b) RaftServerImpl#generateNotLeaderException should not guess current leader when it does not has information about it. This leads to client retrying aggressively which leads into RetryException.
      c) RaftClient right now changes leader for AlreadyClosedException and TimeoutIOException, these events do not trigger leader election and hence the leader should not be changed.

      Attachments

        1. RATIS-601.001.patch
          3 kB
          Mukul Kumar Singh
        2. RATIS-601.002.patch
          4 kB
          Mukul Kumar Singh
        3. RATIS-601.003.patch
          5 kB
          Mukul Kumar Singh

        Issue Links

          Activity

            People

              msingh Mukul Kumar Singh
              msingh Mukul Kumar Singh
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: