Claims
- 1. A method for indicating whether a fault occurs associated with at least first and second data transfer related operations in an array storage system, comprising:
- providing code means including a plurality of code bits, with said code bits being in a first state;
- altering at least a first predetermined code bit of said code bits to a second state, different from said first state, before said first data transfer related operation and before a fault related to said first data transfer related operation;
- conducting said first data transfer related operation and, when no fault occurs during said step of conducting said first data transfer related operation, modifying said code bits differently from said second state;
- performing said second data transfer related operation, which is different in type from said first data transfer related operation; changing at least a second predetermined code bit of said code bits when a fault occurs after said step of performing has begun but not changing said second predetermined code bit when the fault does not occur; and
- accessing said code bits for use in taking corrective action using information in said code bits.
- 2. A method, as claimed in claim 1, wherein:
- said second data transfer related operation includes a data reconstruction operation in which a determination is made that a storage device cannot be properly used to reconstruct data and said step of changing said second predetermined code bit is conducted after a determination is made that said data reconstruction cannot be successfully completed.
- 3. A method, as claimed in claim 1, wherein:
- said first data transfer related operation includes a write to an alternate storage location in which the storing of data to said alternate storage location was not successfully completed and said step of changing occurs before completion of said write to said alternate storage location.
- 4. A method, as claimed in claim 1, wherein:
- said step of accessing includes determining an identity relating to the fault using said second predetermined code bit whenever said second predetermined code bit was changed due to occurrence of the fault.
- 5. A method, as claimed in claim 4, wherein:
- said step of accessing includes taking corrective action to remedy said fault using said identity relating to said fault determined using said second predetermined code bit.
- 6. An array storage system communicating with a host computer, comprising:
- a plurality of storage devices including a spare storage device and a number of storage devices for storing data which constitutes a data block;
- a plurality of device controllers communicating with said plurality of storage devices; and
- array control means communicating with the host computer for receiving and transmitting said data block from and to the host computer, said array control means for performing each of the following operations:
- a first operation for distributing said data, all of which together constitute said data block transmitted from the host computer, into said plurality of device controllers;
- a second operation for appending code bits to at least some of said data before said first operation;
- a third operation for reassembling said data block from each of said data read using at least some of said plurality of device controllers;
- a fourth operation for conducting a first data transfer related operation;
- a fifth operation for altering at least a first predetermined code bit of said code bits;
- a sixth operation for reconstructing said data block by using said plurality of storage devices; wherein said sixth operation is a type of operation different from said fourth operation;
- a seventh operation for detecting a data transfer error between said array control means and said plurality of device controllers; and
- an eighth operation for changing at least a second predetermined code bit of said code bits based on said seventh operation, wherein said changing is conducted at a time associated with said sixth operation different from the time that said altering is conducted associated with said fourth operation.
- 7. An array storage system, as claimed in claim 6, wherein:
- said first predetermined code bit is used to identify said first data transfer related operation.
- 8. An array storage system, as claimed in claim 6, wherein:
- said data transfer error includes an error that occurred during said sixth operation.
- 9. An array storage system, as claimed in claim 6, wherein:
- said first data transfer related operation includes reassigning said data block to alternate storage.
- 10. An array storage system communicating with a host computer, comprising:
- a plurality of storage devices including a spare storage device and a number of storage devices that store data and said data together on said number of storage devices constituting a data block;
- a plurality of device controllers communicating with said plurality of storage devices; and
- array control means, communicating with the host computer for receiving and transmitting said data block from and to the host computer and for performing the following operations:
- a first operation for distributing said data with all of said data constituting said data block transmitted from the host computer, into at least some of said plurality of device controllers;
- a second operation for appending code bits to at least some data before said first operation by said array control means after receiving said data block from the host computer;
- a third operation for reassembling said data block from each of said data read through at least some of said plurality of device controllers:
- a fourth operation for detecting a data transfer error;
- a fifth operation for reassigning a data block to alternate storage:
- a sixth operation for altering at least a first of said code bits before said fifth operation;
- a seventh operation for modifying said first code bit when no fault is detected during said fourth operation due to said fifth operation related to reassignment of said data block;
- a eighth operation for reconstructing said data block by using said plurality of storage devices; and
- a ninth operation for changing at least a second predetermined code bit of said code bits that was detected during said fourth operation due to said eighth operation for reconstructing said data block and for not changing said second predetermined code bit when no data transfer error detected during said fourth operation due to said eighth operation for reconstructing said data block.
Parent Case Info
This is a continuation of application Ser. No. 07/792,702, filed Nov. 15, 1991, now U.S. Pat. No. 5,379,411.
US Referenced Citations (13)
Foreign Referenced Citations (3)
Number |
Date |
Country |
0416968A2 |
Mar 1991 |
EPX |
0442531A2 |
Aug 1991 |
EPX |
WO9113405 |
Sep 1991 |
WOX |
Continuations (1)
|
Number |
Date |
Country |
Parent |
792702 |
Nov 1991 |
|