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

Disabled sanity checks ignored on snapshot restore

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Minor
    • Resolution: Fixed
    • 2.2.6, 2.4.2
    • 2.6.0, 2.5.1, 3.0.0-alpha-4, 2.4.15
    • conf, snapshots
    • None
    • This has been tested in

      • Google Dataproc running HBase 2.2.6
      • Local HBase 2.4.2

    Description

      Disabling sanity checks on a table is ignored when restoring snapshots. If this is expected behavior at least the error message is misleading.

      Steps to Reproduce

      1. Create a new table
        create 't', 'cf'
      2. Add a coprocessor to the newly created table
        alter 't', METHOD => 'table_att', 'coprocessor' => 'coprocessor.jar|com.example.MyCoprocessor|0'
      3. Create a snapshot
        snapshot 't', 'snapshot-t'
      4. Disable the table to prevent region servers from crashing in the next step
        disable 't'
      5. Delete the coprocessor JAR and restart HBase.
      6. Attempt to restore the snapshot leads to failing sanity check as expected
        restore_snapshot 'snapshot-t'
        ERROR: org.apache.hadoop.hbase.DoNotRetryIOException: coprocessor.jar Set hbase.table.sanity.checks to false at conf or table descriptor if you want to bypass sanity checks [...]
      7. Disable sanity checks (as described in the error message) and retry
        alter 't', CONFIGURATION => {'hbase.table.sanity.checks' => 'false'}
        restore_snapshot 'snapshot-t'

      Expected Behavior

      The snapshot is restored.

      Actual Behavior

      The same error message as in step 6. is shown.

      Attachments

        Activity

          People

            ukumar Ujjawal Kumar
            jnodorp-jaconi Julian Nodorp
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: