Alex headshot

AlBlue’s Blog

Macs, Modularity and More

Status of MacZFS on OSX

2011 Zfs Mac

There's been a lot of discussion recently about “ZFS coming back to the Mac” – but in fact, ZFS on the Mac has been ongoing since Apple dropped it a couple of years ago and runs anywhere from OSX 10.5 on PPC through to the latest Lion developer releases.

When Apple backed away from ZFS, a google group and google project were set up to salvage the last publicly released bits and to move them forwards. Even at that stage, the state of the art was far behind OpenSolaris; when OSX 10.5 was released, the latest sync version was onnv_72 and even the latest (non-public) Apple developer bits were somewhere in the July/August 2008 range (pool version 12 IIRC). Meanwhile, the MacZFS project's latest stable release is sync'd with onnv_74 (pool version 8) although there is an unstable version which is sync'd with onnv_78 (pool version 10).

The recent discussions have been kicked off by the creation of TensComplement by former ZFS Apple engineer Don Brady, who is bringing a commercially supported variant of ZFS (sync'd with the latest onnv_147 bits with pool version 28), in part, using the FreeBSD port which has that in testing at the moment.

The future of MacZFS somewhat depends on the TensComplement version. If it is released as open-source, then MacZFS will have done the job of keeping the community alive between when Apple left the project and when Don startetd his company. If it is only released under a commercial license then there is an argument to keep the MacZFS project going; though maybe it is time to follow his lead, abandon the current codebase, and use the latest onnv_147 bits as the starting point. A lot of good porting work has been done on MacZFS to make it easier to port (partially, the reason why the Apple codebase was stagnant for so long is that the project layout was significantly different from the upstream one, which meant patches by copy-and-paste rather than a DVCS merge).

The problem will come if the TensComplement release a version of ZFS for free for commercial use but without source. In that instance, almost all (if not all) of the current MacZFS user base will likely prefer to go with a later version, which will leave the open-source version without a community. I suspect this outcome is unlikely, but if it does, it may mean the death of the MacZFS project. Quite apart from the recency, a company which has been founded to provide full-time commercial support is going to outperform whatever part-time efforts there have been on the community side, no matter how laudable the goal.

So, MacZFS is stable on OSX, albeit with a (very) old implementation; but it's not out of the game. Yet.