HBase
  1. HBase
  2. HBASE-8169

TestMasterFailover#testMasterFailoverWithMockedRITOnDeadRS may fail due to regions randomly assigned to a RS

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Minor Minor
    • Resolution: Fixed
    • Affects Version/s: 0.98.0, 0.94.7
    • Fix Version/s: 0.98.0, 0.94.7, 0.95.1
    • Component/s: test
    • Labels:
      None
    • Hadoop Flags:
      Reviewed

      Description

      In the test case, we use "master.assignRegion(hri);" to assign regions to live RS or dead RS(will be aborted during the test). While master.assignRegion may not always successfully assign a region to the expected RS due to following error:

      1) We firstly try to open a region in region server, let's say RS1
      2) For some reason the region open takes more than a time out period
      3) AM tries to reassign it and force a new plan due to the time out
      4) the Region is re-assigned to a random RS

      Then it cause the test case failure due to regions setup isn't in expected state.

      I attached a log with extra added logging info and some stack traces(with (new Exception()).printStackTrace() so you can ignore java.lang.Exception). You can search region 36716be644bc9c78b3a96e0d4a43c183 to see master.assignRegion assigned a region to a randome RS. I saw the test failed once in 5 times in a loop.

      1. RegionAssignedRandomly.txt
        719 kB
        Jeffrey Zhong
      2. hbase-8169.patch
        8 kB
        Jeffrey Zhong
      3. hbase-8169_trunk.patch
        7 kB
        Jeffrey Zhong
      4. hbase-8169_0.94_rebased.patch
        8 kB
        Jeffrey Zhong

        Activity

        No work has yet been logged on this issue.

          People

          • Assignee:
            Jeffrey Zhong
            Reporter:
            Jeffrey Zhong
          • Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development