- Joined
- Feb 8, 2005
- Messages
- 13,322
I run OmniOS on my main NAS and Solaris 11.1 on my backup NAS. As a result, I like to keep my drive pools at a lower, more compatible version. So, when I created my pool, I used a command like this:
It worked beautifully. However, I'm used to creating subpools using the following command:
Notice an issue? The subpools don't have the "-o version=5" flag set, so they default to version 6! This makes them incompatible with anything except Solaris 11.1+.
Anyway, I'm in the process of adding a disk to my array. This involves ensuring that I have a current backup, destroying my current pool, creating a new one, and restoring from that backup. Well, my restoration was going at several KB/s... Needless to say, wholy inadequate for 13TB of data! I decided to just put both arrays in the same physical box, and copy that way. That's when I encountered an issue: The pool was incompatible!
"No worries," I think to myself, "I'll just upgrade the pool so I can copy, and then create a new, compatible pool later and back it up." So I do a "zpool upgrade". It successfully upgrades the zpool to version 5000. It then complains about being unable to mount a zfs version 6 filesystem! Crap. Now my data can't be accessed from EITHER system. 13TB of data (and the associated backup) are gone. I'm trying a couple of things right now to try and fix it, but I'm not hopeful.
TL;DR: Remember that you have to set the zfs filesystem version flag for each subpool you create, or else you lose your compatibility!
Code:
zpool create -o version=28 -O version=5 pool raidz2 disk1 disk2 disk3 etc
Code:
zfs create pool/subpool
Notice an issue? The subpools don't have the "-o version=5" flag set, so they default to version 6! This makes them incompatible with anything except Solaris 11.1+.
Anyway, I'm in the process of adding a disk to my array. This involves ensuring that I have a current backup, destroying my current pool, creating a new one, and restoring from that backup. Well, my restoration was going at several KB/s... Needless to say, wholy inadequate for 13TB of data! I decided to just put both arrays in the same physical box, and copy that way. That's when I encountered an issue: The pool was incompatible!
"No worries," I think to myself, "I'll just upgrade the pool so I can copy, and then create a new, compatible pool later and back it up." So I do a "zpool upgrade". It successfully upgrades the zpool to version 5000. It then complains about being unable to mount a zfs version 6 filesystem! Crap. Now my data can't be accessed from EITHER system. 13TB of data (and the associated backup) are gone. I'm trying a couple of things right now to try and fix it, but I'm not hopeful.
TL;DR: Remember that you have to set the zfs filesystem version flag for each subpool you create, or else you lose your compatibility!