Virtual Data Block Repair via Backward Pointers
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Large file systems face inefficiencies in metadata repair due to the global scope of corruption in virtual data blocks (VDBs), leading to slow and unwieldy repair processes that affect the entire mapper tree, making it challenging to isolate and fix block-sharing related metadata corruptions.
Innovation Solution
A method is introduced to repair damaged indirect addressing structures by scanning physical data block descriptors to identify affected blocks, recreating VDB entries with forward pointers, and incorporating them into a replacement VDB, which is then integrated into the file system, allowing for targeted and efficient repair without taking the entire mapper offline.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If traditional metadata repair methods are used to fix corrupted VDBs, then the corruption can be repaired, but the entire mapper tree must be taken offline resulting in system downtime
Solution Approach 1:
The patent segments the metadata repair process by introducing backward pointers in PDB entries that enable identification of only the specific corrupted VDB entries. This allows the repair to be isolated to only the affected portions of the mapper tree rather than requiring repair of the entire structure, thus avoiding full system downtime while maintaining repair capability.
Solution Approach 2:
The patent implements preliminary action by maintaining backward pointers from PDB entries to VDB entries as part of the normal data structure. This pre-established metadata linkage enables rapid identification of corrupted entries during repair operations without requiring full tree traversal or system shutdown, allowing repair to proceed while the system remains operational.
2Reliability
If the entire mapper tree is scanned to repair VDB corruption, then all potential corruptions can be found, but the repair process becomes slow and unwieldy
Solution Approach 1:
The patent divides the repair scope into segmented portions by using backward pointers to identify only the specific PDB entries and VDB entries that are actually corrupted. This segmentation transforms a slow, full-tree repair process into a fast, targeted repair operation that processes only the minimal necessary subset of metadata structures.
Solution Approach 2:
The patent extracts the essential repair information by utilizing backward pointers that directly link corrupted VDB entries to their corresponding PDB entries. This extraction mechanism allows the repair process to quickly identify and process only the relevant corrupted portions without scanning the entire mapper tree, dramatically improving repair speed while maintaining completeness.
3Productivity
If backward pointers are added to PDB entries to enable targeted repair, then repair efficiency improves, but the data structure complexity increases
Solution Approach 1:
The backward pointers in PDB entries serve multiple functions: they enable targeted repair operations, facilitate corruption identification, and support efficient metadata traversal. This multi-functionality justifies the additional structural element, as the same mechanism that increases complexity also delivers significant productivity gains in repair operations.
Data Source
AI summary
A method of repairing an indirect addressing structure of a file system damaged by corruption of a virtual data block (VDB) mapping data stored in corresponding physical data blocks (PDBs) includes scanning PDB descriptors to identify PDBs storing data mapped by the corrupted VDB, where each identified PDB includes a set of PDB entries each having a backward pointer identifying a corresponding VDB entry of a corresponding VDB. The identified PDBs are scanned to identify PDB entries whose backward pointers refer to VDB entries of the corrupted VDB, then a replacement VDB is created by (1) for each of the identified PDB entries, recreating a corresponding VDB entry including a forward pointer to the identified PDB entry, and (2) incorporating the recreated VDB entries into the replacement VDB. The replacement VDB is then incorporated into the indirect addressing structure in place of the corrupted VDB.


