Apple was already working to integrate ZFS when Oracle bought Sun.
From TFA:
> ZFS was featured in the keynotes, it was on the developer disc handed out to attendees, and it was even mentioned on the Mac OS X Server website. Apple had been working on its port since 2006 and now it was functional enough to be put on full display.
However, once Oracle bought Sun, the deal was off.
Again from TFA:
> The Apple-ZFS deal was brought for Larry Ellison's approval, the first-born child of the conquered land brought to be blessed by the new king. "I'll tell you about doing business with my best friend Steve Jobs," he apparently said, "I don't do business with my best friend Steve Jobs."
And that was the end.
At the time that NetApp filed its lawsuit I blogged about how ZFS was a straightforward evolution of BSD 4.4's log structured filesystem. I didn't know that to be the case historically, that is, I didn't know if Bonwick was inspired by LFS, but I showed how almost in every way ZFS was a simple evolution of LFS. I showed my blog to Jeff to see how he felt about it, and he didn't say much but he did acknowledge it. The point of that blog was to show that there was prior art and that NetApp's lawsuit was worthless. I pointed it out to Sun's general counsel, too.
Also, according to NetApp, "Sun started it".
https://www.networkcomputing.com/data-center-networking/neta...
[0] https://www.theregister.com/2010/09/09/oracle_netapp_zfs_dis...
Your own link states that Sun approached NetApp about patents 18 months prior to the lawsuit being filed (to be clear that was Storagetek before Sun acquired them):
>The suit was filed in September 2007, in Texas, three years ago, but the spat between the two started 18 months before that, according to NetApp, when Sun's lawyers contacted NetApp saying its products violated Sun patents, and requesting licensing agreements and royalties for the technologies concerned.
And there was a copy of the original email from the lawyer which I sadly did not save a copy of, as referenced here:
https://ntptest.typepad.com/dave/2007/09/sun-patent-team.htm...
As for the presentation, I can't find it at the moment but will keep looking because I do remember it. That being said, a blog post from Val at the time specifically mentions NetApp, WAFL, how the team thought it was cool and decided to build your own:
https://web.archive.org/web/20051231160415/http://blogs.sun....
And the original paper on ZFS that appears to have been scrubbed from the internet mentions WAFL repeatedly (and you were a co-author so I'm not sure why you're saying you didn't reference NetApp or WAFL):
https://ntptest.typepad.com/dave/2007/09/netapp-sues-sun.htm...
https://www.academia.edu/20291242/Zfs_overview
>The file system that has come closest to our design principles, other than ZFS itself,is WAFL[8],the file system used internally by Network Appliance’s NFS server appliances.
Cantrill was not involved in ZFS, and was not a co-author. Cantrill was involved with DTrace:
* https://www.usenix.org/conference/2004-usenix-annual-technic...
* https://www.cs.princeton.edu/courses/archive/fall05/cos518/p...
And the ZFS paper has hardly been scrubbed given it is widely cited:
* https://www.cs.hmc.edu/~rhodes/cs134/readings/The%20Zettabyt...
And the fact that the ZFS paper cites WAFL is hardly an indication of anything, given that NetApp's patent cites a whole bunch of other patents:
* https://patents.google.com/patent/US5819292#patentCitations
Heck, some of the cited patents were Sun's.
* https://en.wikipedia.org/wiki/NetApp#Legal_dispute_with_Sun_...
That was unnecessary, but that does not betray even the slightest risk of violating NetApp's patents. It just brings attention.
Also, it's not true! The BSD 4.4 log-structured filesystem is such a close analog to ZFS that I think it's clear that it "has come closest to our design principles". I guess Bonwick et. al. were not really aware of LFS. Sad.
LFS had:
- "write anywhere"
- "inode file"
- copy on write
LFS did not have: - checksumming
- snapshots and cloning
- volume management
And the free space management story on LFS was incomplete.So ZFS can be seen as adding to LFS these things:
- checksumming
- birth transaction IDs
- snapshots, cloning, and later dedup
- proper free space management
- volume management, vdevs, raidz
I'm not familiar enough with WAFL to say how much overlap there is with WAFL, but I know that LFS long predates WAFL and ZFS. LFS was prior art! Plus there was lots of literature on copy-on-write b-trees and such in the 80s, so there was lots of prior art in that space.Even content-addressed storage (CAS) (which ZFS isn't quite) had prior art.
They were:
> [16] Mendel Rosenblum and John K. Ousterhout. The design and implementation of a log-structured file system. ACM Transactions on Computer Systems, 10(1):26–52, 1992.
> [17] Margo Seltzer, Keith Bostic, Marshall K. McKusick, and Carl Staelin. An implementation of a log-structured file system for UNIX. In Proceedings of the 1993 USENIX Winter Technical Conference, 1993.
* https://www.cs.hmc.edu/~rhodes/cs134/readings/The%20Zettabyt...
What I DO knows is that if the non-infringement were as open and shut as you and Bryan are suggesting, Apple probably wouldn't have scrapped years of effort and likely millions in R&D for no reason. It's not like they couldn't afford some lawyers to defend a frivelous lawsuit...
It’s a constant reminder to me of the value of giving that college kid free access to your code so they can become the next expert doing something creative you never thought of.
We don't know exactly what happened with Apple and Sun, but there were lots of indicia that Apple wanted indemnification and Sun was unwilling to go there. Why Apple really insisted on that, I don't know -- I think they should have been able to do the prior art search and know that NetApp probably wouldn't win their lawsuits, but hey, lawsuits are a somewhat random function and I guess Apple didn't want NetApp holding them by the short ones. DTrace they could remove, but removing ZFS once they were reliant on it would be much much harder.
And given what a litigious jackass Larry Ellison / Oracle is, I can't fault Apple for being nervous.
I think the truth is somewhere in the middle.
Another rumour was that Schwartz spilling the beans pissed Jobs off, which I wouldn't really put past him. Though I don't think it would have been enough to kill this.
I think all these little things added up and the end result was just "better not then".
I imagine the situation would have been different if Apple's ZFS integration had completed and shipped before Sun's demise.
They didn't rip out DTrace, after all.
The business case for providing a robust desktop filesystem simply doesn’t exist anymore.
20 years ago, (regular) people stored their data on computers and those needed to be dependable. Phones existed, but not to the extent they do today.
Fast forward 20 years, and many people don’t even own a computer (in the traditional sense, many have consoles). People now have their entire life on their phones, backed up and/or stored in the cloud.
SSDs also became “large enough” that HDDs are mostly a thing of the past in consumer computers.
Instead you today have high reliability hardware and software in the cloud, which arguably is much more resilient than anything you could reasonably cook up at home. Besides the hardware (power, internet, fire suppression, physical security, etc), you’re also typically looking at multi geographical redundancy across multiple data centers using reed-Solomon erasure coding, but that’s nothing the ordinary user needs to know about.
Most cloud services also offer some kind of snapshot functionality as malware protection (ie OneDrive offers unlimited snapshots for 30 days rolling).
Truth is that most people are way better off just storing their data in the cloud and making a backup at home, though many people seem to ignore the latter, and Apple makes it exceptionally hard to automate.
You would have early warning with ZFS. You have data loss with your plan.
/s
Because any corruption at any point will get synced as a change, or worse can cause failure.
And for the thin-provisioned snapshotted subvolume usecase, btrfs is currently eating ZFS's lunch due to far better Linux integration. Think snapshots at every update, and having a/b boot to get back to a known-working config after an update. So widespread adoption through the distro route is out of the question.
Is this a technical argument? Or is this just more licensing nonsense?
> Think snapshots at every update, and having a/b boot to get back to a known-working config after an update.
I use ZFS and I have snapshots on every update? I have snapshots hourly, daily, weekly and monthly. I have triggered snapshots too, and ad hoc dynamic snapshots too. I wrote about it here: https://kimono-koans.github.io/opinionated-guide/
Solaris had this about a decade ago with beadm:
* https://docs.oracle.com/cd/E53394_01/html/E54749/gpxnl.html
FreeBSD has had it for several years as well. If Linux lacks it that is a failure of Linux (distros) not ZFS.
Also, ZFS has a bad name within the Linux community due to some licensing stuff. I find that most BSD users don't really care about such legalese and most people I know that run FreeBSD are running ZFS on root. Which works amazingly well I might add.
Especially with something like sanoid added to it, it basically does the same as timemachine on mac, a feature that users love. Albeit stored on the same drive (but with syncoid or just manually rolled zfs send/recv scripts you can do that on another location too).
I don't think it's that they don't care, it's that the CDDL and BSD-ish licenses are generally believed to just not have the conflict that CDDL and GPL might. (IANAL, make your own conclusions about whether either of those are true)
I do have a feeling that Linux users in general care more about the GPL which is quite specific of course. Though I wonder if anyone chooses Linux for that reason.
But really personally I don't care whether companies give anything back, if anything I would love less corporate involvement in the OS I use. It was one of my main reasons for picking BSD. The others were a less fragmented ecosystem and less push to change things constantly.
This is out of an abundance of caution. Canonical bundle ZFS in the Ubuntu kernel and no one sued them (yet).
But really, this is a concern for distros. Not for end users. Yet many of the Linux users I speak to are somehow worried about this. Most can't even describe the provisions of the GPL so I don't really know what that's about. Just something they picked up, I guess.
None of this is a worry about being sued as an end user. But all of those are worries that you life will be harder with ZFS, and a lot harder as soon as the first lawsuits hit anyone, because all the current (small) efforts to keep it working will cease immediately.
But these days they want you to subscribe to their cloud storage so the versioning is done there, which makes sense in their commercial point of view.
I think snapshots on ZFS are better than time machine though. Time machine is a bit of a clunky mess of soft links that can really go to shit on a minor corruption. Leaving you with an unrestorable backup and just some vague error messages.
I worked a lot with macs and I've had my share of bad backups when trying to fix people's problems. I've not seen ZFS fail like that. It's really solid and tends to indicate issues before they lead to bigger problems.
[0] https://en.wikipedia.org/wiki/Time_Machine_(macOS)#Operation
I can't readily tell how much of the dumbness is from the filesystem and how much from the kernel but the end result is that until it gets away from 1980s version of file locking there's no prayer. Imagine having to explain to your boss that your .docx wasn't backed up because you left Word open over the weekend. A just catastrophically idiotic design
I have many criticisms of NTFS like it being really bad at handling large volumes of small files. But this is something it can do well.
The lock prevents other people from copying the file or opening it even in read only, yes. But backup software can back it up just fine.
What a weird take. BSD's license is compatible with ZFS, that's why. "Don't really care?" Really? Come on.
Are you saying you didnt edit the post ?
Personally I don't care about or obey any software licenses, as a user.
But this is kinda the vibe I get from other BSD users if a license discussion comes up. Maybe it's my bubble, that's possible.
Under other licensing, developers wield an extraordinary amount of power over the users. Yes, The user could opt not to run that code, but realistically that isn't an option in the modern day. Developers can and will abuse their access to your machine to serve their ends regardless of whether it adds value to you or not. For example, how much data collection is in nearly all modern software?
Perhaps you would argue that what I've said above only applies to a very tiny minority of users who have the technical skills to actually utilize the code, and everyone else It's just a religious argument. I don't fully disagree with that. There is another clear benefit That even those untechnical users received from the GPL, and that is the essentially forced contribution back from companies who want to build on top of it. I don't think there's any better example than the Linux kernel, which has gotten lots of contributions from companies that are otherwise very proprietary in nature and would never have open sourced things. This has benefited everyone and has acted as a rising tide lifting All boats. Without the requirements in the GPL, this most certainly would not happen.
My response to it however, is that those users still get a good amount of protection because The code is out there
Simply - the GPL has some clauses enforcing some obligations (to prevent some rights from being taken away from you, the end user - according to their wording, and I agree), these and other clauses make it legally incompatible with the inclusion of ZFS (CDDL license) in the Linux kernel (GPL). You can build it yourself (so indeed as a user you get to not care or obey) but not distribute it (this is the problem of your distribution's maintainer).
Canonical's lawyers think this is not a problem if the ZFS code is distributed as a module, instead of compiled into the kernel itself, and since 2016 Ubuntu shipped with ZFS support.
The BSD license is considered perfectly compatible with the inclusion of CDDL licensed code and therefore many BSD distros ship with ZFS (and Dtrace) out of the box without legal worries. Indeed Oracle hasn't come knocking.
TL;DR: it's not a vibe. Some licenses are compatible with each other, some aren't. It also depends on how different licenses come into play into a "finished product" (e.g. kernel module vs monolithic build)
Afaik, the FreeBSD position is both ZFS and UFS are fully supported and neither is secondary to the other; the installer asks what you want from ZFS, UFS, Manual (with a menu based tool), or Shell and you do whatever; in that order, so maybe a slight preferance towards ZFS.
The problem is that it is still owned by Oracle. And Solaris ZFS is incompatible with OpenZFS. Not that people really use Solaris anymore.
It is really unfortunate. Linux has adopted file systems from other operating systems before. It is just nobody trust Oracle.