Uploaded image for project: 'HBase'
  1. HBase
  2. HBASE-22977 [HBCK2] hbck2 2.0
  3. HBASE-22976

[HBCK2] Add RecoveredEditsPlayer



    • Type: Sub-task
    • Status: Open
    • Priority: Major
    • Resolution: Unresolved
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: hbck2
    • Labels:


      We need a recovered edits player. Messing w/ the 'adoption service' – tooling to adopt orphan regions and hfiles – I've been manufacturing damaged clusters by moving stuff around under the running cluster. No reason to think that an hbase couldn't lose accounting of a whole region if a cataclysm. If so, region will have stuff like the '.regioninfo', dirs per column family w/ store files but it could too have a 'recovered_edits' directory with content in it. We have a WALPlayer for errant WALs. We have the FSHLog tool which can read recovered_edits content for debugging data loss. Missing is a RecoveredEditsPlayer.

      I took a look at extending the WALPlayer since it has a bunch of nice options and it can run at bulk. Ideally, it would just digest recovered edits content if passed an option or recovered edits directories. On first glance, it didn't seem like an easy integration.... Would be worth taking a look again. Would be good if we could avoid making a new, distinct tool, just for Recovered Edits.

      The bulkload tool expects hfiles in column family directories. Recovered edits files are not hfiles and the files are x-columnfamily so this is not the way to go though a bulkload-like tool that moved the recovered edits files under the appropriate region dir and asked the region reopen would be a possibility (Would need the bulk load complete trick of splitting input if the region boundaries in the live cluster do not align w/ those of the errant recovered edits files).




            • Assignee:
              stack Michael Stack
            • Votes:
              1 Vote for this issue
              8 Start watching this issue


              • Created: