[BUGS] ZFS dis-integration

Andrew Sinclair syncman0x at gmail.com
Sat Jul 10 06:01:14 EST 2010


I've heard rumors that ZFS is unstable. It is not my place to say why,
or even who would say this but...

[sync2x73 at backhand ~]$ more /root/zfs-status-v-grep-recover.txt
  pool: zw0801
 state: ONLINE
status: One or more devices has experienced an error resulting in data
        corruption.  Applications may be affected.
action: Restore the file in question if possible.  Otherwise restore the
        entire pool from backup.
   see: http://www.sun.com/msg/ZFS-8000-8A
 scrub: none requested
config:

        NAME        STATE     READ WRITE CKSUM
        zw0801      ONLINE       0     0     0
          da0s1g    ONLINE       0     0     0

errors: Permanent errors have been detected in the following files:

        zw0801/zw0801:/local/squid/logs/access.log
        zw0801/Q-37-DOC:/usr/share/eagle/lbr/19inch.lbr
        zw0801/Q-37-DOC:/homu/syncman0x/http/dlc-cdn-rd.sun.com/c1/osol/opensolaris/2009/06/osol-0906-x86.iso
[sync2x73 at backhand ~]$


all I wish to say here is this: it was a, "Dam Site," easier to
recover from this, than in UFS. In UFS I have to map each I-node to
its corresponding file to know the content. This is just the way I see
FSCK working. In ZFS, a specific cp and generic scrub are the pair of
commands that fix this.

This error condition was a result of the RAID-5 write hole during a
power outage. This doesn't even panic the kernel anymore. It will just
whine and complain, even when power is restored to the disk, until
reboot.

I'm a bit miffed as to which files had disappeared, from tree root,
when I had to do an emergency FSCK. Rebuilding aliases.db was not
enough.

and yes, I keep backups but upgrading is a pain as it is, with all the
manual diff/merges one is required to do. If I were not stonewalled
out of my own trade, I'd contribute a Subversion based /etc in the
base install, at my own expense, with pleasure.


I'm serious about that last point; the repository would be under
file:///var/etc/tags/2010/07-10--05-53/. All I would have to do is
create a port that depends on Subversion in this manner.


More information about the BUGS mailing list