METHOD AND SYSTEM FOR ENSURING CACHE COHERENCE OF METADATA IN CLUSTERED FILE SYSTEMS
First Claim
1. A method of ensuring metadata cache coherence of a shared file that is simultaneously accessed by multiple hosts, the shared file being associated with a lock having a data field for storing a version number, comprising the steps of:
- comparing the version number stored in the data field of the lock with a locally cached version number;
if the version numbers match, incrementing the version number and storing the incremented version number in the data field of the lock; and
after said storing, modifying the metadata of the shared file, incrementing the version number once more, and storing the incremented version number in the data field of the lock.
2 Assignments
0 Petitions
Accused Products
Abstract
Metadata of a shared file in a clustered file system is changed in a way that ensures cache coherence amongst servers that can simultaneously access the shared file. Before a server changes the metadata of the shared file, it waits until no other server is attempting to access the shared file, and all I/O operations to the shared file are blocked. After writing the metadata changes to the shared file, local caches of the other servers are updated, as needed, and I/O operations to the shared file are unblocked.
-
Citations
20 Claims
-
1. A method of ensuring metadata cache coherence of a shared file that is simultaneously accessed by multiple hosts, the shared file being associated with a lock having a data field for storing a version number, comprising the steps of:
-
comparing the version number stored in the data field of the lock with a locally cached version number; if the version numbers match, incrementing the version number and storing the incremented version number in the data field of the lock; and after said storing, modifying the metadata of the shared file, incrementing the version number once more, and storing the incremented version number in the data field of the lock. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method of ensuring metadata cache coherence of a shared file that is simultaneously accessed by multiple hosts, comprising the steps of:
-
storing a first value in a predetermined storage location to indicate that the metadata of the shared file is being modified; determining from a counter value whether or not all other hosts that are accessing the shared file recognize that the metadata of the shared file is being modified; and upon determining that all other hosts that are accessing the shared file recognize that the metadata of the shared file is being modified, modifying the metadata of the shared file and storing a second value in the predetermined storage location to indicate that the metadata of the shared file is no longer being modified. - View Dependent Claims (9, 10, 11, 12, 13, 14, 15, 16)
-
-
17. A method of ensuring metadata cache coherence of shared files, each of which is simultaneously accessed by multiple hosts, comprising the steps of:
-
designating a first one of the multiple hosts as a lock manager for a first shared file; and designating a second one of the multiple hosts as a lock manager for a second shared file, wherein the lock manager for a shared file grants a write lock to a modifier host to permit the modifier host to change metadata of the shared file and notifies other hosts that are accessing the shared file of the write lock grant. - View Dependent Claims (18, 19, 20)
-
Specification