Details

    • Type: Sub-task Sub-task
    • Status: Resolved
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Component/s: None
    • Labels:
      None

      Description

      This is necessary for QJM to work with HA. When the NNs start up, they start in standby state and try to read from the JournalNodes. So they call getEditLogManifest(). But they don't call getJournalInfo so the httpPort field doesn't get filled in. This means that when they try to actually fetch the remote edits, they fail since they don't know the JN's HTTP port.

      1. hdfs-3694.txt
        14 kB
        Todd Lipcon

        Activity

        Hide
        Todd Lipcon added a comment -

        Attached patch fixes getEditLogManifest to assign the http port member from the response. I also cleaned up the internal APIs to not pass the protobuf all the way through.

        The patch includes a new unit test where one QuorumJournalManager reads while another writes. This simulates the workload of HA.

        Show
        Todd Lipcon added a comment - Attached patch fixes getEditLogManifest to assign the http port member from the response. I also cleaned up the internal APIs to not pass the protobuf all the way through. The patch includes a new unit test where one QuorumJournalManager reads while another writes. This simulates the workload of HA.
        Hide
        Aaron T. Myers added a comment -

        +1, the patch looks good to me.

        Show
        Aaron T. Myers added a comment - +1, the patch looks good to me.
        Hide
        Todd Lipcon added a comment -

        Committed to branch, thanks Aaron.

        Show
        Todd Lipcon added a comment - Committed to branch, thanks Aaron.

          People

          • Assignee:
            Todd Lipcon
            Reporter:
            Todd Lipcon
          • Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development