On 2013-04-22 11:08, Sebastian Gabler wrote:
Now, how should be the behaviour in case of a single block (or a small number of them) that comes back unreadable? Will I loose the complete pool, or will damage be limited to the affected blocks, resp. files referencing these blocks? (Given, that all I will use is zpool.)
Depends on the block (for example, pool metadata low in the tree, close to the roots). I have a metadata:0x0 error on a pool, but it works with that for two years, the evident verdict being that some data is written (and maybe garbled) because it's required by format, but is not really read back or relied upon. I feel lucky ;) Otherwise, for data blocks, damage should be limited to objects using these blocks - files or volumes as appropriate (maybe many "users" via dedup or snapshot/clone). Read-accesses into the broken range return IO errors and increase the CKSUM count for the pool. I think it is possible to exceed a threshold and toss the pool into its configured failmode (i.e. readonly, panic, etc.). It is possible to rewrite the block (i.e. with dd seek/skip flags into the damaged file) from backup sources, but there may be some surprises with older dedup in the game (see my bug reports from 1-2 years ago in zfs list archives). //Jim _______________________________________________ OpenIndiana-discuss mailing list [email protected] http://openindiana.org/mailman/listinfo/openindiana-discuss
