Details

    • Sub-task
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 1.3.1
    • 1.7.0
    • Balancer
    • None
    • Reviewed

    Description

      ServerName calss,the getServerName(String hostName, int port, long startcode),equals and compareTo are case insensitive, but getHostname() is case sensitive.
      if hostName is HOSTNAME1, ServerName is hostname1,11111,1589615319931, and getHostname() returns HOSTNAME1.

      and then BaseLoadBalancer#retainAssignment() uses ServerName#getHostname(), all keys of serversByHostname are upperCase(HOSTNAME1,HOSTNAME2,HOSTNAME3,HOSTNAME4...) from ServerManager#createDestinationServersList, but oldServerName.getHostname() is lowerCase(hostname1,hostname2,hostname3...) from walLog dir.

      and finally...all region of old ServerName will be assigned to random hosts

      Attachments

        1. image-2020-05-18-17-42-57-119.png
          46 kB
          Bo Cui
        2. HBase-24395.patch
          2 kB
          Bo Cui

        Issue Links

          Activity

            People

              Bo Cui Bo Cui
              Bo Cui Bo Cui
              Votes:
              0 Vote for this issue
              Watchers:
              6 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: