Details
Description
TableSnapshotInputFormat restores the snapshot to a temporary directory that is outside the HBase's root directory so that it can read from the restored snapshot and also refer to hfiles in the actual root directory.
In restoring the snapshot, we create new hfilelinks in the ephemeral location. Creating new hfile links also creates "back references" for GC. These back references are dangling since the restore location is outside the root dir, and requires a WRITE permission to the root dir (as opposed to just READ permission) to be able to run the MR-over-snapshot job.