RAID states

  1. Online - The RAID operates normally and serves user IO.
  2. Offline - If the RAID is not online the Offline state is reported. While the RAID is Offline some IO operation to its drives is possible to read or update metadata or service areas while user’s IO is blocked.
  3. Initializing (initing) - The parity data for the stripes is being initialized. This initialization process runs once after the RAID is created or in the event of an emergency stop and stripes resync.
  4. Need Initialization (need_init) - The initialization of stripes is incomplete, and the initialization process is not running.
  5. Initialized - Stripes parity areas are initialized.
  6. Degraded - One or more RAID backing drives have failed. The RAID may or may not support user IO (it can be Online or Offline) depending on number of failed drives.
  7. Need Reconstruction (need_recon) - A drive has failed and has been replaced with the same (reinserted and reconnected) or another drive. Data reconstruction for the drive is required.
  8. Reconstructing - The RAID reconstruction is in progress.
  9. Unrecoverable - If multiple drives fail and become inaccessible (cannot be reinserted or reconnected), the RAID stripes may lack sufficient parity information to support IO and recover lost data. In such cases, manual recovery is necessary, and there is a risk of data loss or corruption.
  10. Unlicensed - xiRAID engine license is expired or inapplicable to the running RAIDs. The RAID runs in read-only mode.

In addition to states listed above and reported by “raid show” command the RAID can be in the following states:

  1. Not Exist - The RAID with this name, UUID and user data does not exist (was never created).
  2. Stopped - The RAID IO is stopped, and the RAID configuration object is removed from the engine runtime. User data is retained on the RAID drives, and the RAID configuration is stored in the engine configuration database. User data is consistent in case of a normal RAID shutdown but can be inconsistent in case of an emergency shutdown.
  3. Foreign - The RAID is stopped, and the RAID configuration is removed from the configuration database. Alternatively, the RAID is created by another RAID engine (compatible with xiRAID or incompatible with xiRAID). Such a RAID cannot run using the engine, but it retains user data. Future releases will be able to import foreign RAID if its format is compatible.

If the RAID is running and can support IO it is labeled as Operational in the document. If the RAID cannot support IO, it is named as Failed. The states of Operational and Failed are not reported by the API as they are considered integral states. Typically, a RAID is considered Operational if its state is Online. However, the RAID can be labeled as Failed if it is Online but Unlicensed.