> What happens when a sub-block is missing (single disk failure)?  Surely
> it doesn't have to discard the entire checksum and simply trust the
> remaining blocks?

The checksum is over the data, not the data+parity.  So when a disk fails,
the data is first reconstructed, and then the block checksum is computed.

> Also, even if it could read the data from a subset of the disks, isn't
> it a feature that every read is also verifying the parity for
> correctness/silent corruption?

It doesn't -- we only read the data, not the parity.  (See line 708 of
vdev_raidz.c.)  The parity is checked only when scrubbing.
 
 
This message posted from opensolaris.org
_______________________________________________
zfs-discuss mailing list
zfs-discuss@opensolaris.org
http://mail.opensolaris.org/mailman/listinfo/zfs-discuss

Reply via email to