[Bug 1548009] Re: ZFS pools should be automatically scrubbed
Richard Laager
rlaager at wiktel.com
Mon Mar 14 22:30:26 UTC 2016
** Description changed:
mdadm automatically checks MD arrays. ZFS should automatically scrub
- pools.
+ pools too, to detect and (when possible) correct on-disk corruption.
- I've attached a debdiff which accomplishes this.
+ I've attached a debdiff which accomplishes this. It builds and installs
+ cleanly.
The meat of it is the scrub script I've been using (and recommending in
my HOWTO) for years, which scrubs all *healthy* pools. If a pool is not
healthy, scrubbing it is bad for two reasons: 1) It adds a lot of disk
- load which could lead to another failure. We should save that disk load
- for resilvering. 2) Performance is already less on a degraded pool and
- scrubbing will make that worse.
+ load which could theoretically lead to another failure. We should save
+ that disk load for resilvering. 2) Performance is already less on a
+ degraded pool and scrubbing will make that worse.
The cron.d in this patch scrubs on the second Sunday of the month. mdadm
scrubs on the first Sunday of the month. This way, if a system has both
MD and ZFS pools, the load doesn't all happen at the same time. If the
system doesn't have both types, it shouldn't really matter which week.
--
You received this bug notification because you are a member of Ubuntu
Sponsors Team, which is subscribed to the bug report.
https://bugs.launchpad.net/bugs/1548009
Title:
[FFe] ZFS pools should be automatically scrubbed
Status in zfs-linux package in Ubuntu:
Confirmed
Bug description:
mdadm automatically checks MD arrays. ZFS should automatically scrub
pools too. Scrubbing a pool allows ZFS to detect and (when the pool
has redundancy) correct on-disk corruption.
I've attached a debdiff which accomplishes this. It builds and
installs cleanly.
The meat of it is the scrub script I've been using on production
systems, both servers and laptops, and recommending in my Ubuntu root-
on-ZFS HOWTO, for years, which scrubs all *healthy* pools. If a pool
is not healthy, scrubbing it is bad for two reasons: 1) It adds a lot
of disk load which could theoretically lead to another failure. We
should save that disk load for resilvering. 2) Performance is already
less on a degraded pool and scrubbing can make that worse, even though
scrubs are throttled. Arguably, I might be being too conservative
here, but the marginal benefit of scrubbing a *degraded* pool is
pretty minimal as pools should not be left degraded for very long.
The cron.d in this patch scrubs on the second Sunday of the month.
mdadm scrubs on the first Sunday of the month. This way, if a system
has both MD and ZFS pools, the load doesn't all happen at the same
time. If the system doesn't have both types, it shouldn't really
matter which week. If you'd rather make it the same week as MD, I see
no problem with that.
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/zfs-linux/+bug/1548009/+subscriptions
More information about the Ubuntu-sponsors
mailing list