Date: Wed, 19 Feb 2014 15:47:35 +0100 From: Borja Marcos <borjam@sarenet.es> To: "freebsd-fs@FreeBSD.org Filesystems" <freebsd-fs@freebsd.org> Subject: Possible ZFS bug? Insufficient sanity checks Message-ID: <BF2D310C-7B8F-413D-9D20-A887236C5913@sarenet.es>
next in thread | raw e-mail | index | archive | help
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@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). Cheers, Borja.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?BF2D310C-7B8F-413D-9D20-A887236C5913>
