> From: zfs-discuss-boun...@opensolaris.org [mailto:zfs-discuss- > boun...@opensolaris.org] On Behalf Of sensille > > I'm quite sure scrub does not check spares or unused areas of the disks > (it > could check if the disks detects any errors there). > But what about the parity? Obviously it has to be checked, but I can't > find > any indications for it in the literature. The man page only states that > the > data is being checksummed and only if that fails the redundancy is > being used. > Please tell me I'm wrong ;)
If my understanding is correct, a scrub reads and checksums all the used blocks on all the primary storage devices. Meaning: The scrub is not checking log devices or spares, and I don't think it checks cache devices. And as you said, it's not reading empty space. The main reason to use scrub, as opposed to your find command (which has some serious shortcomings) or even a "zfs send > /dev/null" command (which has far fewer shortcomings) is: When you just tell the system to read data, you're only sure to read one half of redundant data. You might coincidentally just read the good side of the mirror, or whatever, and therefore fail to detect the corrupted data on the other side of the mirror. You've got to use the scrub. It is very wise to perform a scrub occasionally, because you can only correct errors as long as you still have redundancy. If a device fails, and degrades redundancy, and then some rarely used block is discovered to be corrupt during the resilver ... too bad for you. _______________________________________________ zfs-discuss mailing list zfs-discuss@opensolaris.org http://mail.opensolaris.org/mailman/listinfo/zfs-discuss