14387 shaares
5333 private links
5333 private links
There are only two cases where ZFS will overwrite an existing block. The first is when updating the vdev labels at the beginning and end of each device. The second is when repairing a damaged block on disk. The key here is that the block is rewritten with its original contents meaning its checksum, which is immutable, does not need to change. This is the only valid data which can be written to this block. //
To sum it up:
Read error during normal operation = data gets reconstructed from parity and we continue
Read error during scrub = data gets reconstructed from parity plus fixed by overwriting the data on the disk? The rewrite will then rely on the disk remapping capability of the hard disk.