Error detection/correction and fault detection/recovery – Data processing system error or fault handling – Reliability and availability
Reexamination Certificate
1998-08-04
2001-12-18
Trammell, James P. (Department: 2161)
Error detection/correction and fault detection/recovery
Data processing system error or fault handling
Reliability and availability
C714S766000
Reexamination Certificate
active
06332197
ABSTRACT:
CROSS-REFERENCE TO RELATED APPLICATIONS
This application is related to the following co-pending and commonly-assigned patent applications, all of which are filed on the same date herewith, and all of which are incorporated herein by reference in their entirety:
“Distributed Storage System Using Front-End And Back-End Locking,” by Jai Menon, Divyesh Jadav, Kal Voruganti, U.S. Pat. No. 6,272,662;
“System For Changing The Parity Structure Of A Raid Array,” by Jai Menon, Divyesh Jadav and Deepak Kenchamanna-Hosekote, Ser. No. 09/129,012 ;
“Updating And Reading Data And Parity Blocks In A Shared Disk System,” by Jai Menon, Ser. No. 09/129,067;
“Updating Data and Parity Data With and Without Read Caches,” by Jai Menon, Ser. No. 09/128,438; and
“Updating and Reading Data and Parity Blocks in a Shared Disk System with Request Forwarding,” by Jai Menon and Divyesh Jadav, U.S. Pat. No. 6,128,762.
BACKGROUND OF THE INVENTION
1. Field of the Invention
The present invention relates to a system for updating data and destaging updated data in a shared storage device system.
2. Description of the Related Art
In Redundant Arrays of Independent Disks (RAID) systems, data files and related parity are striped across multiple disk drives. In storage subsystems which manage numerous hard disk drives as single direct access storage device (DASD), the methodologies have also been implemented in software for execution on a single host computer. This allows the single host computer, such as a personal computer, to implement RAID storage techniques on local hard disk drive space. Such software RAID methodologies are described in “Algorithms for Software and Low Cost Hardware RAIDS,” by Jai Menon, Jeff Reigel, and Jim Wyllie, Document No. 1063-6390/95, pgs. 411-418 (IEEE 1995).
One problem with the single storage subsystem is the risk of failure. Techniques have been developed to improve failback and recovery in case of failures in the hardware controller. One such failback technique is the Fast Write Technique which provides two separate controllers on different power boundaries that control the flow of data from host systems to DASDs. If one controller fails, the other controller can continue writing data to the DASD. Typically a non-volatile storage unit (NVS) is included with each separate controller, such that each NVS connected to a controller backs up the data the other controller is writing to DASD. Such failback systems employing the two-controller failsafe structure are described in U.S. Pat. Nos. 5,636,359, 5,437,022, 5,640,530, and 4,916,605, all of which are assigned to International Business Machines, Corporation (IBM), the assignee of the subject application, and all of which are incorporated herein by reference in their entirety.
RAID systems can also be implemented in a parallel computing architecture in which there is no central controller. Instead, a plurality of independent controllers that control local hard disk storage devices are separate nodes that function together in parallel to implement RAID storage methodologies across the combined storage space managed by each node. The nodes are connected via a network. Parity calculations can be made at each node, and not centrally. Such parallel RAID architecture is described in “The TickerTAIP Parallel RAID Architecture,” by Pei Cao, Swee Boon Lim, Shivakumar Venkataraman, and John Wilkes, published in ACM Transactions on Computer Systems, Vol. 12, No. 3, pgs. 236-269 (August, 1994), which is incorporated herein by reference in its entirety.
One challenge in shared disk systems implementing a parallel, shared disk RAID architecture is to provide a system for insuring that data is properly updated to disks in the system, that a write or update request invalidates stale data so such stale data is not returned, and that a read request returns the most current data. Further challenges include reducing the number of messages needed to be exchanged between multiple adaptors in a shared disk system when updating and destaging data, while at the same time keeping two adaptors informed on the status of updates and destages in the event that one of the adaptors fails.
SUMMARY OF THE INVENTION
To overcome the limitations in the prior art described above, preferred embodiments of the present invention disclose a system for updating a data block in a storage device. A first processing unit receives an update to a data block in a storage device. The first processing unit sends a first message including the update and information indicating data blocks that were recently updated to a second processing unit. The second processing unit stores the update in a second storage area and sends a second message to the first processing unit after receiving the first message. The first processing unit stores the update in a first storage area and transfers the update from the first storage area to the data block in the storage device.
In further embodiments, an update to a data block is destaged as follows. A first processing unit receives the update to the data block and stores the update in a storage area. The first processing unit determines whether it controls access to the data block in the storage device. The first processing unit sends a first message to a second processing unit requesting control of access to the data block from the second processing unit after determining that the first processing unit does not control access to the data block. Alternatively, the first processing unit sends a second message to the second processing unit indicating the blocks to be updated in the storage device after determining that the first processing unit does control access to the data block. After the second processing unit has sent a message to the first processing unit providing the first processing unit access control to the data block, the first processing unit then writes the update to the data block from the storage area to the data block in the storage device and sends a third message to the second processing unit indicating that the data block was updated.
With the preferred embodiments, access to data blocks is controlled to insure that parity updates are properly handled, data in memory locations is invalidated so that stale or outdated data is not returned to a later read request, stale data is not destaged to a storage device, and a read request returns the latest version of the data block. Moreover, with the preferred embodiments, the second processing unit is provided information via messaging on the progress of updates and destages, and information thereon. These messages allow the second processing unit to quickly recover and to continue the updating and destaging process in the event that the first processing unit fails.
REFERENCES:
patent: 4654819 (1987-03-01), Stiffler et al.
patent: 4733352 (1988-03-01), Nakamura et al.
patent: 4907232 (1990-03-01), Harper et al.
patent: 4916605 (1990-04-01), Beardsley et al.
patent: 5140592 (1992-08-01), Idleman et al.
patent: 5155729 (1992-10-01), Rysko et al.
patent: 5208813 (1993-05-01), Stallmo
patent: 5293618 (1994-03-01), Tandai et al.
patent: 5301297 (1994-04-01), Menon et al.
patent: 5373512 (1994-12-01), Brady
patent: 5375128 (1994-12-01), Menon et al.
patent: 5437022 (1995-07-01), Beardsley et al.
patent: 5490248 (1996-02-01), Dan et al.
patent: 5499337 (1996-03-01), Gordon
patent: 5526482 (1996-06-01), Stallmo et al.
patent: 5530830 (1996-06-01), Iwasaki et al.
patent: 5530948 (1996-06-01), Islam
patent: 5546535 (1996-08-01), Stallmo et al.
patent: 5572660 (1996-11-01), Jones
patent: 5574863 (1996-11-01), Nelson et al.
patent: 5574882 (1996-11-01), Menon et al.
patent: 5636359 (1997-06-01), Beardsley et al.
patent: 5640530 (1997-06-01), Beardsley et al.
patent: 5664187 (1997-09-01), Burkes et al.
patent: 5737514 (1998-04-01), Stiffler
patent: 5751939 (1998-05-01), Stiffler
patent: 5787460 (1998-07-01), Yashiro et al.
patent: 5809224 (1998-09-01), Schultz et al.
patent: 5813016 (1998-09-01), Sumimoto
patent: 5848229 (1998-12-01), Morita
patent: 5875456 (1999-02-01), Stallmo et al.
patent: 5913227 (
Jadav Divyesh
Kenchammana-Hosekote Deepak R.
Menon Jaishankar Moothedath
Elisca Pierre Eddy
International Business Machines Corp.
Merchant, Gould, Smith, Edell, Welter & Schmidt
Trammell James P.
LandOfFree
System for updating data in a multi-adaptor environment does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with System for updating data in a multi-adaptor environment, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and System for updating data in a multi-adaptor environment will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-2601795