File system node updates
First Claim
1. A computer-implemented method, comprising:
- in response to a request to a file system to perform a requested update;
acquiring a lock of a first node in the file system;
performing an update of the first node while the lock of the first node is held;
releasing the lock of the first node;
sending a notification from the first node to a second node, the notification indicating an update of the first node has been performed;
in response to the notification, acquiring a lock of the second node in the file system, performing the update of the first node being independent of acquiring the lock of the second node;
performing an update of the second node while the lock of the second node is held, the update of the second node reflecting the update of the first node;
sending a response to the request after sending the notification but without waiting for the update of the second node to be completed, the response indicating that the requested update is complete; and
releasing the lock of the second node.
2 Assignments
0 Petitions
Accused Products
Abstract
In response to a request to a file system to perform a requested update, a lock of a first node in a file system can be acquired, and an update of the first node can be performed while the lock of the first node is held. Also in response to the request, a lock of a second node can be acquired, and an update of the second node, which reflects the update of the first node, can be performed while the lock of the second node is held. The update of the first node can be independent of acquiring the lock of the second node. A file system can allow a pair of update operations to be performed in parallel where both operations include updating the same container node. Additionally, while a file system is running, new namespace types can be defined, and the file system can be extended to manage nodes within the new namespace types.
-
Citations
13 Claims
-
1. A computer-implemented method, comprising:
in response to a request to a file system to perform a requested update; acquiring a lock of a first node in the file system; performing an update of the first node while the lock of the first node is held; releasing the lock of the first node; sending a notification from the first node to a second node, the notification indicating an update of the first node has been performed; in response to the notification, acquiring a lock of the second node in the file system, performing the update of the first node being independent of acquiring the lock of the second node; performing an update of the second node while the lock of the second node is held, the update of the second node reflecting the update of the first node; sending a response to the request after sending the notification but without waiting for the update of the second node to be completed, the response indicating that the requested update is complete; and releasing the lock of the second node. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
9. One or more computer-readable storage media having computer-executable instructions embodied thereon that, when executed by at least one processor, cause the at least one processor to perform acts comprising:
-
performing a first update operation in a file system, the first update operation including updating a container node in the file system, and the first update operation including performing acts comprising; acquiring a lock of a contained node that is contained in the container node; performing an update of the contained node while the lock of the contained node is held; releasing the lock of the contained node; notifying the container node that the contained node has been updated; acquiring a lock of the container node; performing an update of the container node to reflect the update of the contained node while the lock of the container node is held, performing the update of the container node being independent of acquiring the lock of the contained node; and releasing the lock of the container node; and performing a second update operation in the file system, the second update operation including updating the container node, the file system allowing performance of the first update operation and the second update operation in parallel. - View Dependent Claims (10, 11, 12, 13)
-
Specification