IP Library Granted Patent US 10,831,623
Granted Patent B1
US 10,831,623 · App. 15/472,268 · Granted Nov 10, 2020

Systems and methods for performing node failovers

Inventors: Rajesh Ghanekar (Pune, IN); Tushar Shinde (Pune, IN); Mukund Agrawal (Pune, IN); Sreeharsha Sarabu (Pune, IN); Vaibhav Gupta (Cupertino, CA); Sandeep Jakka (Pune, IN)
Assignee: Veritas Technologies LLC
G06F11/2033G06F11/1612G06F16/183G06F2201/85
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 10,831,623
App. No.
15/472,268
Granted
Nov 10, 2020
Kind
B1
Abstract

The disclosed computer-implemented method for performing node failovers may include: (1) initiating, during a failover of a first node to a second node, a grace period for the first node and the second node; (2) writing a new lock, indicating an internet protocol (IP) address, to a memory device of the second node, while maintaining: (A) an old lock of the IP address in a memory device of the first node, and (B) locks of nodes other than the first and second nodes; (3) transferring the old lock from the first node to the new lock of the second node, where requests to change the locks of nodes other than the first and second nodes are denied during transferring; and (4) stopping the grace period. Various other methods, systems, and computer-readable media are also disclosed.

Claims (43)

1. A computer-implemented method for performing node failovers, at least a portion of the method being performed by a computing device comprising at least one processor, the method comprising:

initiating, during a failover of a first node to a second node, a grace period for the first node and the second node, wherein no new locks are issued for the first node during the grace period and the failover results from a network access failure of a locked Internet Protocol (IP) connection;

writing a new lock, indicating an IP address, to a memory device of the second node, while:

maintaining an old lock of the IP address in a memory device of the first node; and

issuing, during the grace period and in response to a new lock request, a new lock for a node other than the first and second nodes;

transferring the old lock from the first node to the new lock of the second node, wherein requests to change the locks of nodes other than the first and second nodes are denied during transferring; and

stopping the grace period.

2. The computer-implemented method of claim 1 , further comprising limiting, during the grace period, an application pause to only an application using the first node and the second node.

3. The computer-implemented method of claim 1 , further comprising deleting unacquired locks following transferring and prior to stopping the grace period.

4. The computer-implemented method of claim 1 , wherein the first and second nodes are in a network file system.

5. The computer-implemented method of claim 1 , wherein the first and second nodes are in a cluster file system.

6. The computer-implemented method of claim 1 , wherein other than during transferring, the grace period does not affect nodes other than the first and second nodes.

7. The computer-implemented method of claim 1 , further comprising load balancing across the first and second nodes to initiate the grace period.

8. A system for performing node failovers, the system comprising:

an initiating module, stored in memory, that initiates, during a failover of a first node to a second node, a grace period for the first node and the second node, wherein no new locks are issued for the first node during the grace period and the failover results from a network access failure of a locked Internet Protocol (IP) connection;

a writing module, stored in memory, that writes a new lock, indicating an IP address, to a memory device of the second node, while:

maintaining an old lock of the IP address in a memory device of the first node; and

issuing, during the grace period and in response to a new lock request, a new lock for a node other than the first and second nodes;

a transferring module, stored in memory, that transfers the old lock from the first node to the new lock of the second node, wherein requests to change the locks of nodes other than the first and second nodes are denied during transferring;

a stopping module, stored in memory, that stops the grace period; and

at least one physical processor that executes the initiating module, the writing module, the transferring module, and the stopping module.

9. The system of claim 8 , further comprising a limiting module, stored in the memory, that limits, during the grace period, an application pause to only an application using the first node and the second node.

10. The system of claim 8 , further comprising a deleting module, stored in memory, that deletes unacquired locks following transferring and prior to stopping the grace period.

11. The system of claim 8 , wherein the first and second nodes are in a network file system.

12. The system of claim 8 , wherein the first and second nodes are in a cluster file system.

13. The system of claim 8 , wherein other than during transferring, the system does not affect nodes other than the first and second nodes during the grace period.

14. The system of claim 8 , further comprising a load balancing module, stored in memory, that load balances across the first and second nodes to initiate the grace period.

15. A non-transitory computer-readable medium comprising one or more computer-executable instructions that, when executed by at least one processor of a computing device, cause the computing device to:

initiate, during a failover of a first node to a second node, a grace period for the first node and the second node, wherein no new locks are issued for the first node during the grace period and the failover results from a network access failure of a locked Internet Protocol (IP) connection;

write a new lock, indicating an IP address, to a memory device of the second node, while:

maintaining an old lock of the IP address in a memory device of the first node; and

issuing, during the grace period and in response to a new lock request, a new lock for a node other than the first and second nodes;

transfer the old lock from the first node to the new lock of the second node, wherein requests to change the locks of nodes other than the first and second nodes are denied during transferring; and

stop the grace period.

16. The non-transitory computer-readable medium of claim 15 , wherein the computer-executable instructions comprise computer-executable instructions that cause the computing device to limit, during the grace period, an application pause to only an application using the first node and the second node.

17. The non-transitory computer-readable medium of claim 15 , wherein the computer-executable instructions comprise computer-executable instructions that cause the computing device to delete unacquired locks following transferring and prior to stopping the grace period.

18. The non-transitory computer-readable medium of claim 15 , wherein the first and second nodes are in a network file system.

19. The non-transitory computer-readable medium of claim 15 , wherein the first and second nodes are in a cluster file system.

20. The non-transitory computer-readable medium of claim 15 , wherein the computer-executable instructions comprise computer-executable instructions that cause the computing device to, other than during transferring, not affect nodes other than the first and second nodes during the grace period.

21. The computer-implemented method of claim 1 , wherein the memory device of the first node is a constituent part of only the first node.

22. The computer-implemented method of claim 1 , further comprising:

receiving, during the grace period and from a client, a new lock request for the second node; and

declining to issue the new lock for the second node.

Assignments (13)
SECURITY INTEREST Recorded Dec 12, 2025
From: ARCTERA US LLC
To: CITIBANK, N.A., AS COLLATERAL AGENT
Reel/Frame 073951/0470 →
TERMINATION AND RELEASE OF PATENT SECURITY AGREEMENT AT R/F 069585/0150 Recorded Dec 1, 2025
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: ARCTERA US LLC
Reel/Frame 073833/0848 →
TERMINATION AND RELEASE OF PATENT SECURITY AGREEMENT AT R/F 070530/0497 Recorded Dec 1, 2025
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: ARCTERA US LLC
Reel/Frame 073833/0730 →
RELEASE OF SECURITY INTEREST Recorded Dec 13, 2024
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
To: VERITAS TECHNOLOGIES LLC
Reel/Frame 069634/0584 →
RELEASE OF SECURITY INTEREST Recorded Dec 13, 2024
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: VERITAS TECHNOLOGIES LLC
Reel/Frame 069574/0931 →
PATENT SECURITY AGREEMENT Recorded Dec 10, 2024
From: ARCTERA US LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 069585/0150 →
SECURITY INTEREST Recorded Dec 10, 2024
From: ARCTERA US LLC
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 069563/0243 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 9, 2024
From: VERITAS TECHNOLOGIES LLC
To: ARCTERA US LLC
Reel/Frame 069548/0468 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS AT R/F 052426/0001 Recorded Nov 30, 2020
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: VERITAS TECHNOLOGIES LLC
Reel/Frame 054535/0565 →
SECURITY INTEREST Recorded Aug 20, 2020
From: VERITAS TECHNOLOGIES LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 054370/0134 →
PATENT SECURITY AGREEMENT SUPPLEMENT Recorded Apr 16, 2020
From: VERITAS TECHNOLOGIES, LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 052426/0001 →
PATENT SECURITY AGREEMENT SUPPLEMENT Recorded Jul 10, 2017
From: VERITAS TECHNOLOGIES LLC
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 043141/0403 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 29, 2017
From: GHANEKAR, RAJESH; SHINDE, TUSHAR; AGRAWAL, MUKUND; SARABU, SREEHARSHA; GUPTA, VAIBHAV; JAKKA, SANDEEP
To: VERITAS TECHNOLOGIES LLC
Reel/Frame 041772/0310 →