Uploaded image for project: 'HBase'
  1. HBase
  2. HBASE-7290 Online snapshots
  3. HBASE-7788

[snapshot 130201 merge] Fix flakey TestRestore*SnapshotFromClient#testCloneSnapshot

    XMLWordPrintableJSON

    Details

    • Type: Sub-task
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 0.95.0
    • Component/s: None
    • Labels:
      None
    • Hadoop Flags:
      Reviewed

      Description

      In the current implementation the clone call waits until after the newly created table isTableEnabled. However there is another state (apparently orthogonal) that a newly created table is assumed to be – isTableAvailable (all regions assigned). The logic for checking after table creation and after clone creation are slightly different – creation does the equivalent of isTableAvailable but clone does not check this availability condition.
      This causes flaky failures in tests that quickly try to use/delete a newly cloned table.
      TestRestoreSnapshotFromClient#testCloneSnapshot
      TestRestoreFlushSnapshotFromCleitn#testCloneSnapshot
      I believe there also are race conditions because of the postTableCreateHandler corpco and postTableDeleteHandler coproc hooks.

        Attachments

        1. hbase-7788.patch
          0.8 kB
          Jonathan Hsieh
        2. hbase-7788.debug.patch
          2 kB
          Jonathan Hsieh
        3. hbase-7788.v2.patch
          2 kB
          Jonathan Hsieh

          Issue Links

            Activity

              People

              • Assignee:
                jmhsieh Jonathan Hsieh
                Reporter:
                jmhsieh Jonathan Hsieh
              • Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: