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

Merge repairs always fail to restore the BackupSystemTable snapshot

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Open
    • Minor
    • Resolution: Unresolved
    • 2.6.0, 3.0.0, 4.0.0-alpha-1
    • None
    • backup&restore
    • None

    Description

      In `BackupCommands.RepairCommand#execute`, the following code block is present:

      repairFailedBackupDeletionIfAny(conn, sysTable);
      repairFailedBackupMergeIfAny(conn, sysTable); 

      Both of these methods can be sketched as:

      if (there are no unresolved merges/deletes) {
          BackupSystemTable.deleteSnapshot(conn);
      } else {
          BackupSystemTable.restoreFromSnapshot(conn);
          retry merge/delete
      }

      In case of failed merges, there will be no unresolved deletes, hence the BackupSystemTable snapshot will be deleted. As a result, the restore for the merges will always fail.

      Currently unsure what the risks of this are, haven't explored the merge code yet.

      Update: it looks like the merge code doesn't create a BackupSystemTable snapshot. So the restore/delete snapshot for the merge method is pointless.

      Attachments

        Activity

          People

            Unassigned Unassigned
            dieterdp_ng Dieter De Paepe
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated: