Eric Schrock wrote:
On Mon, Jun 26, 2006 at 05:26:24PM -0600, Gregory Shaw wrote:
You're using hardware raid.  The hardware raid controller will rebuild
the volume in the event of a single drive failure.  You'd need to keep
on top of it, but that's a given in the case of either hardware or
software raid.

True for total drive failure, but not there are a more failure modes
than that.  With hardware RAID, there is no way for the RAID controller
to know which block was bad, and therefore cannot repair the block.
With RAID-Z, we have the integrated checksum and can do combinatorial
analysis to know not only which drive was bad, but what the data
_should_ be, and can repair it to prevent more corruption in the future.

Keep in mind that each disk data block is accompanied by a pretty
long error correction code (ECC) which allows for (a) verification
of data integrity (b) repair of lost/misread bits (typically up to
about 10% of the block data).

Therefore, in case of single block errors there are several possible
situations:

- non-recoverable errors - the amount of correct bits in the combined
  data + ECC in insufficient - such errors are visible to the RAID
  controller, the controller can use a redundant copy of the data, and
  the controller can perform the repair

- recoverable errors - some bits can't be read correctly but they
  can be reconstructed  using ECC - these errors are not directly
  visible to either the RAID controller or ZFS. However, the disks
  keep the count of recoverable errors so disk scrubbers can identify
  disk areas with rotten blocks and force block relocation

- silent data corruption - it can happen in memory before the data
  was written to disk, it can occur in the disk cache, it can be caused
  by a bug in disk firmware. Here the disk controller can't do
  anything and the end-to-end checksums, which ZFS offers,
  are the only solution.

-- Olaf

_______________________________________________
zfs-discuss mailing list
zfs-discuss@opensolaris.org
http://mail.opensolaris.org/mailman/listinfo/zfs-discuss

Reply via email to