Pondering the conversion from HFS+ to APFS


Pondering the conversion from HFS+ to APFS

August 24, 2017 Update: Recently Apple noted that the conversion to APFS will not be optional for Flash-based storage. I updated my recommendations here to reflect that. We also published our own Kbase article about CCC and APFS: Everything you need to know about Carbon Copy Cloner and APFS.

There's a lot of excitement these days about the new APFS filesystem coming from Apple. I'm certainly excited about it; some of the promised features sound great. However, I'm going to make a bold suggestion: Wait a few months before upgrading to High Sierra this Fall. High Sierra may force the APFS conversion upon you, and I think it's common sense to wait for the new filesystem to get some more mileage before making the switch. Sticking with the tried-and-true HFS+ on Sierra for a few months may save you a lot of headaches and wasted time.

Mutual Unreadiness

With just over three years of development and only 13 months of exposure to the developer community, it should come as no surprise that developers (and now some end users) have run into some problems with APFS on the High Sierra beta. All of that is a normal part of Apple's beta testing process. What's not normal, however, is the lack of information available on APFS. The APFS documentation is a meager 10 pages. The documentation for snapshots: zero pages. There are literally two sentences in all of the APFS documentation that do no more than describe that snapshots are a part of APFS. More importantly, there's not really any technical "meat" to the documentation. Two pages describe the APIs that you can use to clone files, but aside from that, it's primarily a lightweight description of features. In comparison, the HFS+ documentation was 59 pages and contained highly technical descriptions of the filesystem format. Apple's documentation indicates that Apple intends to document the filesystem format, but that hasn't happened yet, and it's getting really close to go-time.

Lack of documentation is not a small problem. Basic questions remain unanswered, such as "How do I determine how much space a particular snapshot uses?" and "How can I determine if 'file Y' is a clone of 'file X'?" Here's a good one: how can I definitively determine how much space any particular folder really uses? Doesn't that sound like a weird question? What's alarming is that even Finder doesn't do this math correctly yet.

Snapshots are probably the most exciting and promising feature of APFS, but that aspect of the new filesystem simply isn't ready at all. In fact, it remains to be determined whether third-party developers will ever get access to snapshot APIs. That one needs to be repeated to sink in. The programming interface for creating and manipulating snapshots is not available outside of Apple, and there's absolutely zero documentation about how they work and how to manage them. Yet here we are, just months away from this filesystem being pushed into production on millions of Macs, and we can't use this great new feature. Frankly, I'm OK with that if Apple would simply accept the plain truth that that functionality just isn't ready to be pushed into service on production systems. But that hasn't ever stopped Apple from shipping a product (cough, cough, discoveryd).

Fools rush in

Developing a filesystem from scratch is a huge endeavor, and the pace of progression is impressive. But it's not ready, and I think Apple is pushing it too early. If APFS offered greater security over HFS+, then I could see an argument to move to this new filesystem at a faster pace. But APFS doesn't deliver substantively better security over CoreStorage Encryption on HFS+. There's no impetus to move to this new filesystem so soon after it is released.

I'm genuinely concerned about what kind of results we can expect if millions of users charge head-on into this infant filesystem on their production Macs. If playing with technology and learning about the new features of the OS and filesystem is your hobby, then by all means, make good backups and charge on ahead. But if that's not your hobby – if you wouldn't call yourself "technically inclined" or if you're the person that wants to use your Mac to do things rather than mess around with OS reinstalls and data recovery, then I urge you to patiently wait for a .1, .2, or even .3 release of High Sierra before taking the plunge. Let us nerds get the bugs sorted out while APFS finds its footings. HFS+ may be an aging and sometimes flawed filesystem, but we know it and we're familiar with it. APFS will get there, but trust is earned when reliability is proven.