IP Library Granted Patent US 7,546,429
Granted Patent B1
US 7,546,429 · App. 11/590,324 · Granted Jun 9, 2009

Method of detection of data corruption in mirrored storage

Assignee: Symantec Operating Corporation
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,546,429
App. No.
11/590,324
Granted
Jun 9, 2009
Kind
B1
Abstract

A first read request is received from a computer system. Data from one mirror of a data volume is returned to the computer system in response to receiving the first read request. The computer system may check the returned data to determine whether it is corrupted. If corrupted, the computer system sends a second read request for the same data. Rather than returning the same corrupted data stored in the one mirror, a copy of the requested data is returned from an alternate mirror of the data volume.

Claims (40)

1. A method comprising:

receiving a first read request, wherein the first read request is received from a computer system;

reading data from three or more mirrors of a data volume in response to receiving the first read request;

returning data from a first of the three or more mirrors;

comparing the data read from the three or more mirrors;

creating a new entry in a memory if the data from at least two of the three or more mirrors do not compare equally, wherein the entry comprises an identification of data sought by the first read request;

receiving a second read request, wherein the second read request is received from the computer system; and

comparing an identification of data sought by the second request with identifications of data sought in respective entries stored in memory.

2. The method of claim 1 wherein the new entry further comprises an identity of the first mirror and a time stamp identifying a time when the first read request was received.

3. The method of claim 1 further comprising identifying a mirror of the three or more mirrors that has not yet been marked as read in the new entry in the memory.

4. The method of claim 3 further comprising reading data from the identified mirror and adding its identity the new entry in the memory and updating the timestamp.

5. A computer readable storage medium comprising instructions executable by a first computer system, wherein the first computer system performs a method in response to executing the instructions, the method comprising:

receiving a first read request, wherein the first read request is received from a computer system;

reading data from first and second mirrors of a data volume in response to receiving the first read request;

comparing the data read from the first and second mirrors;

creating a new entry in a searchable data structure if the data in the first and second mirrors do not compare equally, wherein the entry comprises an identification of data sought by the first read request;

receiving a second read request, wherein the second read request is received from the computer system; and

comparing an identification of data sought by the second request with identifications of entries in the searchable data structure.

6. The computer readable storage medium of claim 5 wherein

the method further comprises an act of returning data from the first mirror to the computer system.

7. The computer readable storage medium of claim 6 wherein

the new entry further comprises an identity of the first mirror and a time stamp identifying a time when the first read request was received.

8. A computer readable storage medium comprising instructions executable by a first computer system, wherein the first computer system performs a method in response to executing the instructions, the method comprising:

reading data from first and second mirrors of a data volume in response to receiving a first read request from a computer system;

comparing the data read from the first and second mirrors;

creating a new entry in a searchable data structure if the data in the first and second mirrors do not compare equally, wherein the entry comprises an identification of data sought by the first read request; and

in response to receiving a second read request from the computer system, comparing an identification of data sought by the second request with identifications of entries in the searchable data structure.

9. The computer readable storage medium of claim 8 wherein the method further comprises:

returning data from the first mirror to the computer system.

10. The computer readable storage medium of claim 8 wherein the new entry further comprises

an identity of the first mirror and a time stamp identifying a time when the first read request was received.

11. An apparatus comprising:

means for receiving a first read request, wherein

the first read request is received from a computer system;

means for reading data from three or more mirrors of a data volume, in response to a receipt of the first read request;

means for returning data from a first of the three or more mirrors;

means for comparing the data read from the three or more mirrors;

means for creating a new entry in a memory if the data from at least two of the three or more mirrors do not compare equally, wherein the entry comprises an identification of data sought by the first read request;

means for receiving a second read request, wherein the second read request is received from the computer system; and

means for comparing an identification of data sought by the second request with identifications of data sought in respective entries stored in memory.

Assignments (15)
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 →
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 →
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 10, 2024
From: ARCTERA US LLC
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 069563/0243 →
PATENT SECURITY AGREEMENT Recorded Dec 10, 2024
From: ARCTERA US LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 069585/0150 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 9, 2024
From: VERITAS TECHNOLOGIES LLC
To: ARCTERA US LLC
Reel/Frame 069548/0468 →
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: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 037891/0001 →
SECURITY INTEREST Recorded Feb 23, 2016
From: VERITAS US IP HOLDINGS LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 037891/0726 →
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 Oct 1, 2007
From: VERITAS OPERATING CORPORATION
To: SYMANTEC OPERATING CORPORATION
Reel/Frame 019899/0213 →
Continuity (2)
Division 1074212900 · Dec 19, 2003
Continuation In Part 1061060400 · Jul 1, 2003