Possible ZFS bug? Insufficient sanity checks
Mark Felder
feld at FreeBSD.org
Fri Feb 21 00:52:03 UTC 2014
On Wed, Feb 19, 2014, at 8:47, Borja Marcos wrote:
>
> Hello,
>
> Doing something stupid I managed to corrupt a ZFS pool. I think it
> shouldn´t have been possible. I hope to reproduce it next week, but
> it's better to share just in case.
>
> I know what I did was quite foolish, and no dolphins were hurt as it's
> just a test machine.
>
> FreeBSD pruebassd 10.0-STABLE FreeBSD 10.0-STABLE #8: Wed Feb 12 09:32:29
> UTC 2014 root at pruebassd:/usr/obj/usr/src/sys/PRUEBASSD2_10 amd64
>
> The pool has one RAIDZ vdev, with 6 OCZ Vertex 4 SSDs.
>
> The stupid manoeuvre was as follows:
>
> 1) Pick up one of the disks at random.
>
> 2) Extract it.
>
> So far so good. zpool warns that the pool is in degraded state, but
> everythng works.
>
> 3) Take the disk to a different system. Insert it and create a new pool
> on it. Just one disk, I was testing a data corruption issue with a "mfi"
> adapter.
>
> 4) Do some tests.
>
> 5) Probably (not sure) destroy the newly created pool.
>
> 6) take the ssd to the original machine -> insert it
>
> And here the fun comes.
>
> 7) zpool online cashopul (the previously removed disk)
>
> 8) KABOOM! zpool warns of data corruption all over the place. -> most
> files corrupted.
>
>
>
> My theory: When doing the "zpool online" ZFS just checked the disk
> serial number or identification, and, being the same, *not verifying the
> pool identity* it mixed it into the pool with disastrous consequences.
>
> What I think should have happened instead:
>
> - ZFS should verify the physical disk "identity" *and* verify that the
> ZFS metadata on the disk indeed belongs to the pool on which it's being
> "onlined".
>
>
> Again, I do know that I did something very foolish (I behave in a foolish
> and careless way with that machine on purpose).
>
> I'll try to reproduce this next week (I'm waiting to receive some SAS
> cables).
>
>
I'm curious: on both machines did the zpools share the same name?
More information about the freebsd-fs
mailing list