[Bug 219537] OpenZFS 8166 - zpool scrub thinks it repaired offline device
bugzilla-noreply at freebsd.org
bugzilla-noreply at freebsd.org
Tue Jun 6 14:47:15 UTC 2017
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=219537
--- Comment #4 from commit-hook at freebsd.org ---
A commit references this bug:
Author: gjb
Date: Tue Jun 6 14:46:23 UTC 2017
New revision: 319624
URL: https://svnweb.freebsd.org/changeset/base/319624
Log:
MFC r318943 (avg):
MFV r318942: 8166 zpool scrub thinks it repaired offline device
https://www.illumos.org/issues/8166
If we do a scrub while a leaf device is offline (via "zpool offline"),
we will inadvertently clear the DTL (dirty time log) of the offline
device, even though it is still damaged. When the device comes back
online, we will incompletely resilver it, thinking that the scrub
repaired blocks written before the scrub was started. The incomplete
resilver can lead to data loss if there is a subsequent failure of a
different leaf device.
The fix is to never clear the DTL of offline devices. Note that if a
device is onlined while a scrub is in progress, the scrub will be
restarted.
The problem can be worked around by running "zpool scrub" after
"zpool online".
See also https://github.com/zfsonlinux/zfs/issues/5806
PR: 219537
Approved by: re (kib)
Sponsored by: The FreeBSD Foundation
Changes:
_U stable/11/
stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c
--
You are receiving this mail because:
You are on the CC list for the bug.
More information about the freebsd-fs
mailing list