US11409670B2ActiveUtilityA1

Managing lock coordinator rebalance in distributed file systems

Assignee: EMC IP HOLDING CO LLCPriority: Dec 17, 2020Filed: Dec 17, 2020Granted: Aug 9, 2022
Est. expiryDec 17, 2040(~14.4 yrs left)· nominal 20-yr term from priority
Inventors:Ron Steinke
G06F 16/1774G06F 12/0802G06F 2212/604G06F 12/1466G06F 12/0891
52
PatentIndex Score
0
Cited by
4
References
20
Claims

Abstract

Managing lock coordinator rebalance in distributed file systems is provided herein. A node device of a cluster of node devices can comprise a processor and a memory that stores executable instructions that, when executed by the processor, facilitate performance of operations. The operations can comprise determining an occurrence of a group change between a cluster of node devices and executing a probe function based on the occurrence of the group change. Further, the operations can comprise reasserting first locks of a group of locks based on a result of the probe function indicating reassertion of the first locks. The second locks of the group of locks, other than the first locks, are not reasserted based on the result of the probe function. The cluster of node devices can operate as a distributed file system.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
       1. A system, comprising:
 a processor; and 
 a memory that stores executable instructions that, when executed by the processor, facilitate performance of operations, comprising:
 determining an occurrence of a group change between a cluster of node devices; 
 executing a probe function based on the occurrence of the group change; 
 receiving a set of values in response to the probe function, wherein the set of values comprises a first value, a second value, and a third value; 
 determining that first locks of a group of locks are associated with the first value and the second value; 
 determining that second locks, other than the first locks of the group of locks, are associated with the third value; and 
 reasserting the second locks based on a result of the probe function indicating reassertion of the second locks, wherein the first locks are not reasserted based on the result of the probe function. 
 
 
     
     
       2. The system of  claim 1 , wherein the reasserting the second locks comprises determining that a lock loss callback thread uses respective locks of the second locks and that respective cache associated with a thread is available for invalidation. 
     
     
       3. The system of  claim 1 ,
 wherein the first value of the set of values indicates no cache is to be invalidated, wherein the second value of the set of values indicates a lock loss callback thread does not utilize a lock and respective cache associated with a thread is available for invalidation, and wherein the third value of the set of values indicates the lock loss callback thread utilizes the lock and that respective cache associated with the thread is available for invalidation. 
 
     
     
       4. The system of  claim 1 , wherein the determining the occurrence of the group change comprises:
 determining a removal of an existing node device from the cluster of node devices; 
 determining an addition of a new node device to the cluster of node devices; or 
 determining both the removal of the existing node device and the addition of the new node device. 
 
     
     
       5. The system of  claim 1 , wherein incompatible locks are created when two threads hold exclusive locks on a same resource. 
     
     
       6. The system of  claim 1 , wherein the executing the probe function comprises executing local functions while bypassing a coordinator node included in the cluster of node devices. 
     
     
       7. The system of  claim 1 , wherein the operations further comprise:
 discarding block cache and inode cache associated with the first locks. 
 
     
     
       8. The system of  claim 1 , wherein a lock of the group of locks is associated with a lock coordinator node between the cluster of node devices, and wherein the operations further comprise:
 enabling tracking of a defined lock type requested for each resource from the lock coordinator node. 
 
     
     
       9. The system of  claim 1 , wherein the cluster of node devices operate as a distributed file system. 
     
     
       10. A method, comprising:
 ascertaining, by a first node device comprising a processor and part of a group of node devices, that a group change has occurred at the group of node devices; 
 in response to a probe function executed based on the ascertaining, receiving, by the first node device, a set of values that comprise a first value, a second value, and a third value; 
 determining, by the first node device, that first locks of a set of locks are associated with the first value and the second value and that second locks of the set of locks are associated with the third value, wherein the first locks and the second locks are different locks of the set of locks; 
 reasserting, by the first node device, the second first locks of a group of locks based on a result of the probe function indicating reassertion of the second locks; and 
 discarding, by the first node device, the first locks based on the result of the probe function indicating the reassertion of the first locks is not needed, wherein the first value of the set of values indicates no cache is to be invalidated, wherein the second value of the set of values indicates a lock loss callback thread does not utilize a lock and respective cache associated with a thread is available for invalidation, and wherein the third value of the set of values indicates the lock loss callback thread utilizes the lock and that respective cache associated with the thread is available for invalidation. 
 
     
     
       11. The method of  claim 10 , wherein the reasserting the second locks comprises determining a lock loss callback thread uses respective locks of the second locks and that respective cache associated with a thread is available for invalidation. 
     
     
       12. The method of  claim 10 , wherein the discarding the first locks comprises determining a lock loss callback thread does not use respective locks of the second locks and that respective cache associated with a thread is available for invalidation. 
     
     
       13. The method of  claim 10 , wherein the discarding the first locks comprises determining no cache is to be invalidated. 
     
     
       14. The method of  claim 10 , further comprising:
 prior to the reasserting, executing the probe function comprising bypassing a coordinator node included in the group of node devices based on execution of one or more local functions. 
 
     
     
       15. The method of  claim 10 , wherein the group of locks are exclusive locks in a distributed file system. 
     
     
       16. The method of  claim 10 , wherein the group change comprises at least one of an additional node added to the group of node devices and a removal of a node from the group of node devices. 
     
     
       17. A non-transitory machine-readable medium, comprising executable instructions that, when executed by a processor, facilitate performance of operations, comprising:
 executing a probe function based on a determination that a group change is occurring at a cluster of node devices configured to operate as a distributed file system, wherein the probe function evaluates respective locks and associated cache of a group of resources, wherein the respective locks comprise a first set of locks and a second set of locks different from the first set of locks; 
 receiving a set of values in response to the probe function, wherein the set of values comprise a first value, a second value, and a third value; 
 determining that the second set of locks are associated with the first value and the second value, and that the first set of locks are associated with the third value; 
 determining the first set of locks of the respective locks are to be reasserted based on results of the probe function; and 
 reasserting the first set of locks, wherein the second set of locks are not reasserted based on the results of the probe function. 
 
     
     
       18. The non-transitory machine-readable medium of  claim 17 , wherein the reasserting the first set of locks comprises determining that a lock loss callback thread uses respective locks of the first set of locks and that respective cache associated with a thread is available for invalidation. 
     
     
       19. The non-transitory machine-readable medium of  claim 17 , wherein the executing the probe function comprises executing local functions while bypassing a coordinator node included in the cluster of node devices. 
     
     
       20. The non-transitory machine-readable medium of  claim 17 , wherein the first value of the set of values indicates no cache is to be invalidated, wherein the second value of the set of values indicates a lock loss callback thread does not utilize a lock and respective cache associated with a thread is available for invalidation, and wherein the third value of the set of values indicates the lock loss callback thread utilizes the lock and that respective cache associated with the thread is available for invalidation.

Join the waitlist — get patent alerts

Track US11409670B2 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.