ZFS Checksum errors

Peter Maloney peter.maloney at brockmann-consult.de
Fri Jun 22 07:49:30 UTC 2012


In case nobody mentioned it yet, 8.2-RELEASE was a very bad ZFS release.
8.2-STABLE around Sept 2011 was good (with buggy zvols still
http://www.freebsd.org/cgi/query-pr.cgi?pr=161968).

To anyone with problems with 8.2-RELEASE, I always recommend upgrading
the release, creating a new pool, using zfs send to copy the old, and
destroying the old pool. All the zfs experience in the world will not be
enough to deal with a messed up pool that is only messed up due bugs
specific to a single short lived release. Using zfs send should only
replicate the things you snapshotted, which excludes that broken file
reported in "zpool status -v".

I discovered very minor problems in my pool with 8.2-RELEASE, and others
reported problems with not being able to remove logs, but being able to
OFFLINE them and run degraded... so I preemptively destroyed it. In my
case I did it with consumer disks, and then again back to the enterprise
disks. And if you do it this way (twice) then you also only need as many
disks as it takes to fit your data, rather than the same number.


On 06/20/2012 07:20 PM, rondzierwa at comcast.net wrote:
> Greetings, 
>
> I have a zfs filesystem on an 8.2-release amd64 system. hardware is amd phenom 964 with 8gb memory, 3ware 9650 controller with 8x seagate ST2000DL003 drives. the disks are configured in a raid-5, and present one device to the system. 
>
> Early today I got some checksum and i/o errors on the console: 
> Jun 20 07:33:43 phoenix root: ZFS: checksum mismatch, zpool=zfsPool path=/dev/da0 offset=7698387574272 size=9728 
> Jun 20 07:33:43 phoenix root: ZFS: checksum mismatch, zpool=zfsPool path=/dev/da0 offset=7698387564544 size=9728 
> Jun 20 07:33:43 phoenix root: ZFS: zpool I/O failure, zpool=zfsPool error=86 
> Jun 20 07:33:43 phoenix root: ZFS: checksum mismatch, zpool=zfsPool path=/dev/da0 offset=7698387574272 size=9728 
> Jun 20 07:33:43 phoenix root: ZFS: zpool I/O failure, zpool=zfsPool error=86 
>
>
>
> So I ran a scrub, after a couple of hours i got a pile of checksum errors that looked rather similar: 
>
> Jun 20 12:45:24 phoenix root: ZFS: checksum mismatch, zpool=zfsPool path=/dev/da0 offset=560450768384 size=4096 
>
>
> zpool status indicates that a file has errors, but doesn't tell me its name: 
>
> phoenix# zpool status -v zfsPool 
> pool: zfsPool 
> 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: scrub in progress for 5h27m, 18.71% done, 23h42m to go 
> config: 
>
> NAME STATE READ WRITE CKSUM 
> zfsPool ONLINE 0 0 38 
> da0 ONLINE 0 0 434 1.06M repaired 
>
> errors: Permanent errors have been detected in the following files: 
>
> zfsPool/raid:<0x9e241> 
> phoenix# 
>
>
> How can I locate and get rid of the offending file? 
>
> thanks, 
> ron. 
>
>
>
>
> _______________________________________________
> freebsd-fs at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-fs
> To unsubscribe, send any mail to "freebsd-fs-unsubscribe at freebsd.org"


-- 

--------------------------------------------
Peter Maloney
Brockmann Consult
Max-Planck-Str. 2
21502 Geesthacht
Germany
Tel: +49 4152 889 300
Fax: +49 4152 889 333
E-mail: peter.maloney at brockmann-consult.de
Internet: http://www.brockmann-consult.de
--------------------------------------------



More information about the freebsd-fs mailing list