A few days ago someone contacted me with an interesting issue with regards to the ZFS automatic snapshots, facilitatedby the time slider service.
The Situation
- OpenSolaris machine with zpool exported. Time slider was working prior to export.
- Solaris 11 Express fresh install with zpool imported.
The Symptoms
Basically the core of the issue was that the zpool was from an OpenSolaris machine, in lieu of doing an upgrade from OpenSolaris to Solaris 11 Express, the zpool was exported and imported into a machine which was already running Solaris 11 Express. Upon the import new snapshots were being created by the time slider service however old ones were not being expired. You can still manually delete snapshots.
The Solution
The fix is really simple, we just need to upgrade the versions of the zpool and zfs.
# zpool get version tank NAME PROPERTY VALUE SOURCE tank version 14 local
# zfs get version tank NAME PROPERTY VALUE SOURCE tank version 3 -
To resolve the issues you must upgrade the zpool and the zfs to the latest versions, then your automatic snapshots will work fine.
First we must upgrade the zpool to support the zfs.
# zpool upgrade tank This system is currently running ZFS pool version 31. Successfully upgraded 'tank' from version 14 to version 31
Now we must upgrade all of the z file systems, if you want to only upgrade certain zfs then you must drop the -a and specify the name specifically.
# zfs upgrade -a 1 filesystems upgraded 6 filesystems already at this version
Now that the versions are all current the automatic snapshots should start cleaning themselves up.