Details
-
Sub-task
-
Status: Closed
-
Major
-
Resolution: Fixed
-
None
-
None
Description
Failing to take snapshot due to FileNotFoundException
- FlushSnapshotSubprocedure.RegionSnapshotTask takes a region level read lock
- Call to HRegion#addRegionToSnapshot.
- Call to SnapshotManifest#addRegion. This gets the current list of store files.
- RACE → File is marked as compacted away and HFileArchiver moves the file to archive under store level lock.
- SnapshotManifest#addRegion visits the stale list of store files one by one. It does a file.getStatus() call to get length of each file. Since the file object still points to the original file, file.getStatus() fails with FileNotFoundException.
Attachments
Attachments
Issue Links
- relates to
-
HBASE-18399 Files in a snapshot can go missing even after the snapshot is taken successfully
- Closed