Granular self-healing of a file in a distributed file system
AssigneeRed Hat, Inc.
InventorsPranith Kumar Karampuri, Anand Vishweswaran Avati
Life of this patent
Estimating the term…
Abstract
A server processing device acquires a lock on a region of a file which has stale data. The server processing device self-heals the stale data in the locked region using current data and receives a write request to modify another region of the file during the self-healing of the locked region of the file. The server processing device provides write access to the requested region during the self-healing of the locked region of the file.
Claims17
A method comprising:
- for each of a plurality of regions of a file:
- acquiring a lock on a current region of the file;
- releasing a lock on a preceding region of the file;
- determining whether to self-heal the locked region of the file;
- in response to a determination to self-heal the locked region of the file, self-healing, by a processing device, stale data in the locked region of the file using current data and acquiring a lock on a next region of the file;
- and
- in response to a determination not to self-heal the locked region of the file, acquiring a lock on the next region of the file;
- and
- for at least one of the plurality of regions of the file:
- receiving a write request to modify an unlocked region of the file during the self-healing of the locked region of the file;
- and
- providing write access to the unlocked region of the file during the self-healing of the locked region of the file.
A non-transitory computer-readable medium including instructions that, when executed by a processing device, cause the processing device to perform operations comprising:
- for a plurality of regions of the file:
- acquiring a lock on a current region of the file;
- releasing a lock on a preceding region of the file;
- determining whether to self-heal the locked region of the file;
- in response to a determination to self-heal the locked region of the file, self-healing, by the processing device, stale data in the locked region of the file using current data and acquiring a lock on a next region of the file;
- and
- in response to a determination not to self-heal the locked region of the file, acquiring a lock on the next region of the file;
- and
- for at least one of the plurality of regions of the file:
- receiving a write request to modify an unlocked region of the file during the self-healing of the locked region of the file;
- and
- providing write access to the unlocked region of the file during the self-healing of the locked region of the file.
A system comprising:
- a memory;
- and
- a processing device operatively coupled to the memory, the processing device for a plurality of regions of a file:
- acquire a lock on a current region of the file;
- release a lock on a preceding region of the file;
- determining whether to self-heal the locked region of the file;
- in response to a determination to self-heal the locked region of the file, self-heal stale data in the locked region of the file using current data and acquire a lock on a next region of the file;
- and
- in response to a determination not to self-heal the locked region of the file, acquire a lock on the next region of the file;
- and
- for at least one of the plurality of regions of a file:
- receive a write request to modify an unlocked region of the file during the self-healing of the locked region of the file;
- and
- provide write access to the unlocked region of the file during the self-healing of the locked region of the file.
Dependencies are inferred from the claim text.