ZFS: Apple's new filesystem that wasn't (2016)

Why Apple Didn’t Ship ZFS

  • Consensus that licensing and business risk, not core technical issues, killed ZFS at Apple.
  • Multiple comments cite Sun/Oracle’s refusal to give Apple strong indemnification in the NetApp patent fight as the key blocker.
  • Apple could (and did) ship CDDL code like DTrace, but a filesystem holding all user data was seen as too central to risk without contractual protection.
  • Some see this as “Tim Cook doctrine” / control over core tech; others call that more NIH than necessity.

APFS vs ZFS and the Migration Story

  • Several argue Apple could have rolled out ZFS as smoothly as APFS, using the same “convert in memory, discard on error, log back to Apple” strategy.
  • Others counter that APFS’s clean-sheet design, tuned for Apple’s flash/NVMe stack and uniform device layouts, enabled the unusually smooth conversion.
  • APFS is criticized for checksumming only metadata; ZFS-style end-to-end data checksums are described as a major missing feature.
  • Some note APFS is still a poor fit for spinning disks and that Apple devices don’t always auto-convert external media.

ZFS on Phones, Watches, and Low-RAM Systems

  • Disagreement on whether ZFS would have been viable on early iPhones and Apple Watch–class devices.
  • Pro-ZFS comments cite successful deployments on very small systems and emphasize that high RAM needs are mostly about dedup.
  • Skeptics point to latency, ARC behavior, and RAM pressure as potential issues on highly dynamic, constrained devices.

ECC, Bit Flips, and “ZFS Will Eat Your Data”

  • A long subthread debunks the idea that ZFS “requires” ECC or is uniquely prone to corruption with non‑ECC RAM.
  • ZFS is framed as more likely to detect underlying hardware faults (RAM, cables, controllers, disks) rather than cause them.
  • Debate over real-world error rates: some claim consumer hardware plus non-checksumming filesystems already produce noticeable silent corruption; others say disk-level ECC is usually sufficient.

ARC, Memory Pressure, and Performance

  • Discussion of ZFS ARC as a large cache outside the normal page cache; historically it could release memory too slowly under pressure.
  • Modern implementations integrate better with VM and have tunable limits, but corner cases (especially on desktops) still exist.
  • Mixed performance anecdotes: some see ZFS on macOS as disastrous (especially over USB), others report excellent performance on Linux/BSD and servers.

Industry Context and Alternatives

  • Commenters tie the demise of ZFS-on-macOS and Microsoft’s WinFS to a broader shift: desktop filesystems seen as less strategic in a cloud‑centric world.
  • ZFS is first-class on FreeBSD and widely used for bulk storage and snapshot/replication workflows; Linux adoption is hampered by GPL/CDDL incompatibility and out‑of‑tree status.
  • Btrfs and other CoW filesystems (and higher-level tools like Stratis) are viewed as more naturally integrated into Linux for snapshotting and boot‑environment features.