Sunday, May 9, 2010

zil synchronicity and zpool status updates

A few interesting ZFS related enhancement have made it's way into the OpenSolaris source the last week. First PSARC/2010/108 zil synchronicity was integrated which made it possible to control how writes are handled per ZFS dataset. Previously if you wanted to disable the ZIL and in practice disable synchronous writes in favor of speed you had to do it for the whole system. It can now be set per dataset and you also have the ability to force all writes to be synchronous. This can be particular useful for speeding up writes to temporary NFS shares since NFS writes are synchronous. This should however only be used if speed is more important than that the data is guaranteed to be safe on disk if something fails, even if ZFS always is consistent on disk all data might not have been written to disk before failure.

The second enhancements was in the scrub code, among many things it should now be more accurate when estimating the time for a scrub/resilver, resilver progress per disk and zpool should now remember when the last scrub was performed even after reboot. Here is a more complete list of these changes.

The ZIL synchonicity enhanchements where made possibly thanks to fellow blogger Robert Milkowski, good work!

1 comment:

Jeppe Toustrup said...

Now if only the dev builds could get going again, so we could use all these new features instead of being stuck at build 134, there would be much joy.

I'm not really in the mood for compiling everything myself :P

Oh well, we will just have to wait, longer than we already have...