IP Library Granted Patent US 11,409,670
Granted Patent B2
US 11,409,670 · App. 17/124,694 · Granted Aug 9, 2022

Managing lock coordinator rebalance in distributed file systems

Inventor: Ron Steinke (Tacoma, WA)
Assignee: EMC IP Holding Company LLC
G06F12/1466G06F12/0802G06F12/0891G06F2212/604
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,409,670
App. No.
17/124,694
Granted
Aug 9, 2022
Kind
B2
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 (45)

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.

Assignments (9)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (055479/0342) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
Reel/Frame 062021/0460 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (055479/0051) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
Reel/Frame 062021/0663 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (056136/0752) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
Reel/Frame 062021/0771 →
RELEASE OF SECURITY INTEREST AT REEL 055408 FRAME 0697 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 058001/0553 →
SECURITY INTEREST Recorded Mar 3, 2021
From: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 056136/0752 →
SECURITY INTEREST Recorded Mar 3, 2021
From: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 055479/0051 →
SECURITY INTEREST Recorded Mar 3, 2021
From: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 055479/0342 →
SECURITY AGREEMENT Recorded Feb 25, 2021
From: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 055408/0697 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 17, 2020
From: STEINKE, RON
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 054678/0722 →