bjomobo opened a new pull request, #8013:
URL: https://github.com/apache/hbase/pull/8013

   ## Description
   
   RestoreSnapshotHelper.restoreRegion() creates a StoreFileTracker using the 
raw Master conf which lacks table-level settings like 
`hbase.store.file-tracker.impl=FILE`. This causes DefaultStoreFileTracker to be 
used, whose `doSetStoreFiles()` is a no-op. The `.filelist` is never updated 
after restore, leading to `FileNotFoundException` when regions try to open 
files that were archived.
   
   Regression introduced by HBASE-28564.
   
   ## Changes
   
   - Merge table descriptor config via `StoreUtils.createStoreConfiguration()` 
before creating the tracker in `restoreRegion()`
   - Move tracker creation inside the `snapshotFamilyFiles != null` check to 
avoid `NullPointerException` on families being removed
   - Add `withColumnFamilyDescriptor()` to the "Add families not present in the 
table" code path
   
   ## New Tests
   
   - `TestRestoreSnapshotProcedureFileBasedSFT` — end-to-end restore with FILE 
tracker
   - `TestRestoreSnapshotHelperWithFileBasedSFT` — unit-level `.filelist` 
verification
   - `TestRestoreSnapshotFileTrackerTableLevel` — table-level FILE tracker with 
compaction and multi-family restore
   
   Jira: https://issues.apache.org/jira/browse/HBASE-30049


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to