IP Library Granted Patent US 7,631,220
Granted Patent B1
US 7,631,220 · App. 11/478,158 · Granted Dec 8, 2009

Method and system for completing a backup job that was interrupted during a backup process

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 7,631,220
App. No.
11/478,158
Granted
Dec 8, 2009
Kind
B1
Abstract

A computer network, system and computer-readable medium for completing a backup job that was interrupted during a backup process is described. The computer-readable medium causes a processor to perform the steps of retrieving an object from one or more volumes stored in a client computer, determining whether the object is listed in a catalog, where the catalog comprises a partially backed up volume from a list of one or more volumes that still need to be backed up, determining whether the object is partially backed up if the object is listed in the catalog and writing the data contained in the object to one or more storage devices if the object is partially backed up or is not listed in the catalog.

Claims (45)

1. A computer network for backing up a job that was interrupted during a backup process, comprising:

means for identifying the job that was interrupted during the backup process;

means for using the interrupted job to build a list of one or more volumes that still need to be backed up;

means for generating a catalog containing a partially backed up volume from the list of volumes that still need to be backed up;

means for retrieving an object from the one or more volumes stored in a client computer;

means for determining whether the object is listed in the catalog;

means for determining whether the object is partially backed up if the object is listed in the catalog; and

means for writing the data contained in the object to one or more storage devices if the object is partially backed up or is not listed in the catalog, wherein the means for using the interrupted job to build the list of volumes comprises:

means for building a second list of volumes associated with the job that was interrupted during the backup process; and

means for removing from the second list of volumes associated with the interrupted job a third list of volumes that had been completely backed up.

2. The computer network of claim 1 , wherein the partially backed up volume is the first volume listed on the volumes that still need to be backed up.

3. The computer network of claim 1 , wherein the catalog is a disk-based catalog.

4. The computer network of claim 1 , wherein the object is a container object.

5. The computer network of claim 1 , wherein the means for generating the catalog comprises means for storing one or more objects listed in one or more persistent records of one or more temporary catalog files to the catalog.

6. The computer network of claim 1 , wherein the means for determining whether the object is partially backed up comprises means for determining that the object is partially backed up if the object is the last object listed in the catalog.

7. The computer network of claim 1 , wherein the means for generating the catalog comprises means for identifying the partially backed up volume using one or more persistent records of one or more temporary catalog files and an amount of data previously written to the storage devices.

8. A computer-readable medium having stored thereon a plurality of instructions, the plurality of instructions including instructions which, when executed by a processor, cause the processor to perform functions comprising:

retrieving, for backup to a backup system, an object from one or more volumes stored in a client computer;

sending to the backup system at least one query for querying a catalog of the backup system, wherein the catalog comprises: a partially backed up volume, wherein the catalog is generated from a list of one or more volumes that still need to be backed up, and wherein the list is built from at least one job that was interrupted during at least one backup process;

determining, via the at least one query, (i) that the object is not listed in the catalog or (ii) that the object is listed in the catalog and partially backed up; and

writing the data contained in the object to one or more storage devices when the object is partially backed up or is not listed in the catalog.

9. The computer-readable medium of claim 8 , wherein the plurality of instructions further include instructions which, when executed cause the processor to perform functions comprising:

identifying the at least one job that was interrupted during the at least one backup process; and

building the list of one or more volumes that still need to be backed up using the interrupted job.

10. The computer-readable medium of claim 9 , wherein the plurality of instructions further include instructions which, when executed cause the processor to perform functions comprising:

avoiding writing the data contained in the object to the one or more storage devices when the object is completely backed up.

11. The computer-readable medium of claim 9 , wherein the plurality of instructions further include instructions which, when executed cause the processor to perform functions comprising:

removing, from the list of one or more volumes, one or more volumes that were completely backed up.

12. A method comprising for recovering from interruption of a backup process, the method comprising:

retrieving, for backup to a backup system, an object from one or more volumes stored in a client computer;

sending to the backup system at least one query for querying a catalog of the backup system, wherein the catalog comprises: a partially backed up volume, wherein the catalog is generated from a list of one or more volumes that still need to be backed up, and wherein the list is built from at least one job that was interrupted during at least one backup process;

determining, via the at least one query, (i) that the object is not listed in the catalog or (ii) that the object is listed in the catalog and partially backed up; and

writing the data contained in the object to one or more storage devices when the object is partially backed up or is not listed in the catalog.

13. The method of claim 12 , further comprising: avoiding writing the data contained in the object to the storage devices when the object is completely backed up.

14. The method of claim 12 , wherein the catalog is a disk-based catalog.

15. The method of claim 12 , wherein the object is a container object.

16. The method of claim 12 , wherein the partially backed up volume is a volume listed first on the list of one or more volumes that still need to be backed up.

17. The method of claim 12 , further comprising:

Identifying, at a server computer of a backup system, the at least one job that was interrupted during the at least one backup process;

building, at the server computer as a function of the at least one job, the list of one or more volumes that still need to be backed up; and

generating the catalog at the server computer from the list of one or more volumes that still need to be backed up.

18. The method of claim 17 , wherein building the list of one or more volumes comprises: removing, from the list of one or more volumes, at least one volume that was backed up completely.

19. The method of claim 17 , wherein generating the catalog comprises: storing, to the catalog, one or more objects listed in one or more persistent records of one or more temporary catalog files.

20. The method of claim 19 , wherein generating the catalog further comprises: discerning the partially backed up volume from (i) one or more persistent records of one or more temporary catalog files and (ii) an amount of data that was written to the storage devices.

21. The method of claim 12 , wherein determining that the object is partially backed up comprises: rendering the object as partially backed up when the object is listed last in the catalog.

Assignments (13)
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 AND CHANGE OF NAME Recorded Apr 18, 2016
From: VERITAS US IP HOLDINGS LLC; VERITAS TECHNOLOGIES LLC
To: VERITAS TECHNOLOGIES LLC
Reel/Frame 038455/0752 →
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 037697/0412 →
CHANGE OF NAME Recorded Sep 21, 2007
From: VERTITAS OPERATING CORPORATION
To: SYMANTEC OPERATING CORPORATION
Reel/Frame 019866/0544 →