Uploaded image for project: 'HBase'
  1. HBase
  2. HBASE-3168

Sanity date and time check when a region server joins the cluster

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 0.89.20100924
    • 0.90.0
    • regionserver
    • None
    • RHEL 5.5 64bit, 1 Master 4 Region Servers

    • Reviewed

    Description

      Introduce a sanity check when a RS joins the cluster to make sure its clock isn't too far out of skew with the rest of the cluster. If the RS's time is too far out of skew then the master would prevent it from joining and RS would die and log the error.

      Having a RS with even small differences in time can cause huge problems due to how bhase stores values with timestamps.

      According to J-D in ServerManager we are already doing:

          HServerInfo info = new HServerInfo(serverInfo);
          checkIsDead(info.getServerName(), "STARTUP");
          checkAlreadySameHostPort(info);
          recordNewServer(info, false, null);
      

      And that the new check would fit in nicely there.

      JG suggests we add a "ClockOutOfSync-like exception"

      Attachments

        1. HBASE-3168-v5.patch
          16 kB
          Jonathan Gray
        2. HBASE-3168-v4.patch
          15 kB
          Jonathan Gray
        3. HBASE-3168-trunk-v3.txt
          12 kB
          Jeff Whiting
        4. HBASE-3168-trunk-v2.txt
          11 kB
          Jeff Whiting
        5. HBASE-3168-trunk-v1.txt
          7 kB
          Jeff Whiting

        Activity

          People

            whitingj Jeff Whiting
            whitingj Jeff Whiting
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: