Disclosed is a system for altering the structure of parity groups, e.g.,
altering the RAID level or number of storage devices included in the RAID
array. A parity group consists of a set of data blocks and parity data for
the data blocks. The data and parity data are stored in at least two
storage devices. The first processing unit alters the parity structure of
an Nth set of parity groups, wherein N is an integer value greater than or
equal to zero. A set of parity groups includes at least one parity group.
The second processing unit determines an Nth range of parity groups
including the Nth set of parity groups. After detecting the failure of the
first processing unit while altering the parity structure of the parity
groups in the Nth set, the second processing unit processes the parity
groups in the determined Nth range to determine a parity group whose
parity structure was being altered when the first processing unit failed.