Locating ZFS checksum errors

David Christensen dpchrist at holgerdanske.com
Sun Sep 5 20:34:02 UTC 2021


On 9/4/21 2:56 AM, Jimmy Olgeni wrote:
> 
> Hi,
> 
> Short version of the story: due to a bad RAM stick I managed to collect some
> checksum errors on a ZFS pool; they are not reported by a scrub, but show up
> when running "zdb -bcsvL".
> 
> They look like this:
> 
>                              capacity   operations   bandwidth  ---- errors ----
> description                used avail  read write  read write  read write cksum
> rpool                      469G  451G 1.65K     0  146M     0     0     0     0
>    mirror                   469G  451G 1.65K     0  146M     0     0     0     0
>      /dev/gpt/pool1                      843     0 73.0M     0     0     0    98
>      /dev/gpt/pool0                      842     0 73.1M     0     0     0    98
> 
> A few of them are logged during the scan:
> 
> zdb_blkptr_cb: Got error 97 reading <404, 0, 1, 17> DVA[0]=<0:e0956e000:6000> DVA[1]=<0:1200c25000:6000> [L1 DMU dnode] fletcher4 lz4 unencrypted LE contiguous unique double size=20000L/6000P
>   birth=7322L/7322P fill=5419 cksum=743743d4a15:652404d7275bf1:349b01108bcc58b4:6eb5731a7332a4d1 -- skipping

<snip>

> Now, how do I find out which files (or whatever else) are affected, in order to
> fix them? :)
> 
> I tried to get a detailed log from zdb with all the DVAs and checksums, but I
> could not find any match.


On 9/5/21 4:37 AM, Graham Perrin wrote:
 > On 05/09/2021 08:34, Jimmy Olgeni wrote:
 >
 >> I restored some random files (a few package builds) and the errors
 >> went away..


How did you determine which files to restore?


David


More information about the freebsd-questions mailing list