IP Library Granted Patent US 9,690,666
Granted Patent B1
US 9,690,666 · App. 13/539,913 · Granted Jun 27, 2017

Incremental backup operations in a transactional file system

Inventors: Sujit Shrinivas Shembavnekar (Maharashtra, IN); Mohammed Eliyas N. A. Shaikh (Maharashtra, IN); Syed Mehtab Ali (Maharashtra, IN); Amitrajit Banerjee (Maharashtra, IN); Ravindra V. Teli (Pune, IN)
Assignee: Veritas Technologies LLC
G06F11/1451G06F11/1458G06F11/1461G06F11/1466G06F3/0604G06F3/0647G06F3/0683
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 9,690,666
App. No.
13/539,913
Granted
Jun 27, 2017
Kind
B1
Abstract

Various systems and methods for performing incremental backups in transactional file systems. For example, one method involves performing the first stage of a multi-stage write operation, where the write operation writes a data block. The method then involves performing a backup operation. However, the backup operation does not backup the modified block, since not all stages of the multi-stage write operation have been performed. The method involves updating metadata to indicate that though the data block was modified and a backup operation was performed, the data block was not included in the backup operation. After all stages of the multi-stage write operation have completed, e.g., a transaction is committed, a subsequent backup operation is performed. The data block is backed up during the subsequent backup operation.

Claims (85)

1. A method comprising:

detecting a first stage of a write operation, wherein

the first stage of the write operation comprises changing data of a first data block;

in response to detecting the first stage of the write operation, updating changed blocked metadata to indicate that the first data block has been changed;

subsequent to the detecting, executing a first backup operation, wherein

the first backup operation occurs after the first stage of the write operation and before a second stage of the write operation,

the first data block is not included in the first backup operation,

non-protected block (NPB) metadata is set to indicate that the first data block has been changed but was not included in the first backup operation, and

the changed block metadata is cleared;

subsequent to completing the second stage of the write operation, updating file system metadata to indicate that the first data block has been committed; and

selecting the first data block to be included in a subsequent backup operation, wherein

the subsequent backup operation occurs after the second stage of the write operation, and

the selecting is based on the changed block metadata, the NPB metadata, and the file system metadata.

2. The method of claim 1 , further comprising:

updating the file system metadata in response to detecting the second stage of the write operation, wherein

the updating the file system metadata comprises including information identifying the first data block in the file system metadata.

3. The method of claim 1 , wherein

the selecting is based on detecting that information identifying the first data block is included in the NPB metadata and in the file system metadata.

4. The method of claim 3 , further comprising:

adding information identifying the first data block to changed block metadata in response to the detecting the first stage of the write operation.

5. The method of claim 1 , further comprising:

removing information identifying the first data block from the changed block metadata in response to the executing the first backup operation.

6. The method of claim 1 , wherein

the first backup operation comprises an incremental backup of a transactional file system.

7. The method of claim 1 , wherein

the selecting comprises comparing the NPB metadata with the changed block metadata and the file system metadata,

the NPB metadata identifies data blocks to be included in the subsequent backup operation, and

the file system metadata indicates which blocks in a storage device are in use.

8. The method of claim 1 , further comprising:

removing information identifying the first data block from the NPB metadata in response to executing the subsequent backup operation.

9. A non-transitory computer readable storage medium storing program instructions executable to:

detect a first stage of a write operation, wherein

the first stage of the write operation comprises changing data of a first data block;

in response to detecting the first stage of the write operation, update changed blocked metadata to indicate that the first data block has been changed;

subsequent to the detecting, execute a first backup operation, wherein

the first backup operation occurs after the first stage of the write operation and before a second stage of the write operation,

the first data block is not included in the first backup operation,

non-protected block (NPB) metadata is set to indicate that the first data block has been changed but was not included in the first backup operation, and

the changed block metadata is cleared;

subsequent to completing the second stage of the write operation, update file system metadata to indicate that the first data block has been committed; and

select the first data block to be included in a subsequent backup operation, wherein

the subsequent backup operation occurs after the second stage of the write operation, and

the selecting is based on the chanced block metadata, the NPB metadata, and the file system metadata.

10. The non-transitory computer readable storage medium of claim 9 , wherein the instructions are further executable to:

update the file system metadata in response to detecting the second stage of the write operation, wherein

updating the file system metadata comprises including information identifying the first data block in the file system metadata.

11. The non-transitory computer readable storage medium of claim 9 , wherein

selecting the first data block is based on detecting that information identifying the first data block is included in the NPB metadata and in the file system metadata.

12. The non-transitory computer readable storage medium of claim 9 , wherein the instructions are further executable to:

add information identifying the first data block to changed block metadata in response to detecting the first stage of the write operation.

13. The non-transitory computer readable storage medium of claim 9 , wherein the instructions are further executable to:

remove information identifying the first data block from the changed block metadata in response to executing the first backup operation.

14. The non-transitory computer readable storage medium of claim 9 , wherein

selecting the first data block comprises comparing the NPB metadata with the changed block metadata and the file system metadata,

the NPB metadata identifies data blocks to be included in the subsequent backup operation, and

the file system metadata indicates which blocks in a storage device are in use.

15. The non-transitory computer readable storage medium of claim 9 , wherein the instructions are further executable to:

remove information identifying the first data block from the NPB metadata in response to executing the subsequent backup operation.

16. A system comprising:

one or more processors; and

a memory coupled to the one or more processors, wherein the memory stores program instructions executable by the one or more processors to:

detect a first stage of a write operation, wherein

the first stage of the write operation comprises changing data of a first data block;

in response to detecting the first stage of the write operation, update changed blocked metadata to indicate that the first data block has been changed;

subsequent to the detecting, execute a first backup operation, wherein

the first backup operation occurs after the first stage of the write operation and before a second stage of the write operation,

the first data block is not included in the first backup operation,

non-protected block (NPB) metadata is set to indicate that the first data block has been changed but was not included in the first backup operation, and

the changed block metadata is cleared;

subsequent to completing the second stage of the write operation, update file system metadata to indicate that the first data block has been committed; and

select the first data block to be included in a subsequent backup operation, wherein

the subsequent backup operation occurs after the second stage of the write operation, and

selecting the first data block is based on the changed block metadata, the NPB metadata, and the file system metadata.

17. The system of claim 16 , wherein the instructions are further executable to:

update the file system metadata in response to detecting the second stage of the write operation, wherein

updating the file system metadata comprises including information identifying the first data block in the file system metadata.

18. The system of claim 16 , wherein

selecting the first data block is based on detecting that information identifying the first data block is included in the NPB metadata and in the file system metadata.

19. The system of claim 16 , wherein

selecting the first data block comprises comparing the NPB metadata with the changed block metadata and the file system metadata,

the NPB metadata identifies data blocks to be included in the subsequent backup operation, and

the file system metadata indicates which blocks in a storage device are in use.

20. The system of claim 16 , wherein the instructions are further executable to:

remove information identifying the first data block from changed block metadata in response to executing the first backup operation, and

remove information identifying the first data block from the NPB metadata in response to executing the subsequent backup operation.

Assignments (14)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 7, 2026
From: VERITAS TECHNOLOGIES LLC
To: COHESITY, INC.
Reel/Frame 075763/0001 →
AMENDMENT NO. 1 TO PATENT SECURITY AGREEMENT Recorded Apr 8, 2025
From: VERITAS TECHNOLOGIES LLC; COHESITY, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 070779/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 26, 2025
From: VERITAS TECHNOLOGIES LLC
To: COHESITY, INC.
Reel/Frame 070335/0013 →
RELEASE OF SECURITY INTEREST Recorded Dec 16, 2024
From: ACQUIOM AGENCY SERVICES LLC, AS COLLATERAL AGENT
To: VERITAS TECHNOLOGIES LLC (F/K/A VERITAS US IP HOLDINGS LLC)
Reel/Frame 069712/0090 →
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 →
SECURITY INTEREST Recorded Dec 9, 2024
From: VERITAS TECHNOLOGIES LLC; COHESITY, INC.
To: JPMORGAN CHASE BANK. N.A.
Reel/Frame 069890/0001 →
ASSIGNMENT OF SECURITY INTEREST IN PATENT COLLATERAL Recorded Nov 25, 2024
From: BANK OF AMERICA, N.A., AS ASSIGNOR
To: ACQUIOM AGENCY SERVICES LLC, AS ASSIGNEE
Reel/Frame 069440/0084 →
TERMINATION AND RELEASE OF SECURITY IN PATENTS AT R/F 037891/0726 Recorded Nov 30, 2020
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: VERITAS US IP HOLDINGS, LLC
Reel/Frame 054535/0814 →
SECURITY INTEREST Recorded Aug 20, 2020
From: VERITAS TECHNOLOGIES LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 054370/0134 →
MERGER Recorded Apr 18, 2016
From: VERITAS US IP HOLDINGS LLC
To: VERITAS TECHNOLOGIES LLC
Reel/Frame 038483/0203 →
SECURITY INTEREST Recorded Feb 23, 2016
From: VERITAS US IP HOLDINGS LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 037891/0726 →
SECURITY INTEREST Recorded Feb 23, 2016
From: VERITAS US IP HOLDINGS LLC
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 037891/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 4, 2016
From: SYMANTEC CORPORATION
To: VERITAS US IP HOLDINGS LLC
Reel/Frame 037693/0158 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 2, 2012
From: SHEMBAVEKAR, SUJIT SHRINIVAS; SHAIKH, MOHAMMED ELIYAS N.A.; ALI, SYED MEHTAB; BANERJEE, AMITRAJIT; TELI, RAVINDRA V.
To: SYMANTEC CORPORATION
Reel/Frame 028477/0114 →