Hacker News new | past | comments | ask | show | jobs | submit login

Can you comment on btrfs by comparison? Also, what is the status of the license incompatibility/integration of ZFS with distros? Canonical seems to think that shipping it with ubuntu is legal, but other distros seem less sure.



Fedora is proposing to default to btrfs for its next release: https://fedoraproject.org/wiki/Changes/BtrfsByDefault


Contrast with Debian's warnings on the topic:

* https://wiki.debian.org/Btrfs#Warnings


Btrfs has pretty much the same features listed above minus the cache drive handling. (You can still get the cache drive behaviour over bcache device) The raid has different modes, so you'll have to decide if what's available is enough for you.

You can check the status of each feature here: https://btrfs.wiki.kernel.org/index.php/Status


It’s also still considered experimental and according to kernel.org wiki “under heavy development.” ZFS was released for production use 14 years ago.


https://github.com/torvalds/linux/blob/master/fs/btrfs/Kconf...

None of the options are marked experimental. (Specific features are marked unstable on the status page)

"Under heavy development" does not mean anything about stability. The kernel itself is under heavy development. ZoL is under heavy development. The disk format is stable, which is what matters.

SUSE provides commercial support for btrfs and uses it as the default. That's pretty much as non-experimental as is gets.


In the past, when data integrity issues emerged, btrfs devs have stated that it is not ready for production. Has there been an announcement to the contrary? If btrfs is production ready, is this clearly stated somewhere? Solaris has defaulted to ZFS at least since version 11 first released eight years ago.

Update - also it appears Suse enterprise uses btrfs for the root os filesystem but xfs for everything else including by default /home. To me, this seems telling? If it’s so solid why not use it for /home?


It's trivial to use ZFS on NixOS, including on the root partition.

The legal position is that ZFS is open source under a copyleft license but that many people think that it's illegal to bundle it with the Linux kernel because of some (I think unintended) incompatibilities between its license and the Linux kernel's license. Canonical (and some others) disagree, and think that it's legal. It's only the bundling that's at issue - everyone agrees that it's legal to use with Linux once you have both.

See https://ubuntu.com/blog/zfs-licensing-and-linux for Canonical's opinion.


The incompatibility was very much intended, Sun needed a way to compete with linux and didn't want to be assimilated into the linux ecosystem, so they released opensolaris under CDDL instead of GPL or MIT. Oracle haven't re-licensed it for their own reasons.

Here is some more info on the subject: https://sfconservancy.org/blog/2016/feb/25/zfs-and-linux/


> The incompatibility was very much intended

Nope. Simon Phipps, Sun's Chief Open Source Officer at the time, and the boss of Danese Cooper—who is the source of the claims it was intended—has stated it was not:

* https://en.wikipedia.org/wiki/Common_Development_and_Distrib...

Brian Cantrill, the co-author of Dtrace, has also stated that that they were expecting the Linux folks to potentially incorporate their work:

* https://old.reddit.com/r/IAmA/comments/31ny87#cq3bs9z

Do you have any citations that can corroborate the/your claim that incompatibility was intended?

> Here is some more info on the subject:

See also:

* https://softwarefreedom.org/resources/2016/linux-kernel-cddl...


Do you happen to know where the claim that it was intended came from?


Because Danese Cooper said so. (See video link from the Wikipedia article: https://en.wikipedia.org/wiki/Common_Development_and_Distrib...)

I think there's also a general suspicion that Sun could have just chosen the GPL if they cared about compatibility. Although, for various reasons, it's probably at least somewhat more complicated than that because of patent protection, etc.


> I think there's also a general suspicion that Sun could have just chosen the GPL if they cared about compatibility.

There were 'technical' reasons why they did go not with GPL, and specifically GPLv2 (GPLv3 was not out yet). IIRC, they did consider waiting for GPLv3, but it was unknown when it would be out, and one thing they desired was a patent grant, which v2 does not have.

Another condition was that they wanted a file-based copyright rather than a work-based copyright (i.e., applies to any individual files of ZFS as opposed to "ZFS" in aggregate).

* https://nawilson.com/2007/12/02/why-the-dislike-for-cddl/


I had forgotten about some of the reasons they specifically wanted file-based copyright. Sun were clients at the time and I spoke fairly frequently with the open source folks there. But I didn't remember all the details and was certainly not privy to all the internal discussions.


"Sun could have just chosen the GPL if they cared about compatibility."

That's a very loaded statement. I've seen it said quite a lot over the years. But, have you thought about its implications?

The implicit assumption here is the primacy of the GPL over all other open source licences. Why should other companies and organisations treat it as "more special" than any other free/open source licence when it comes down to interoperability?

When it comes down to compatibility, the GPL is one of the last licences you should choose. Because by its very nature it is deliberately and intentionally incompatible with everything other than the most permissive licences. The problem with "viral" licences like the GPL is that "there can only be one" because they are mutually incompatible by nature. Why should the MPL/Apache/CDDL licences make special exemptions to lessen their requirements so that they can be GPL-compatible?


I should have written compatibility with the GPL (or really the Linux kernel which was what was most relevant from the perspective of Solaris). And, of course, Sun could have chosen a fully permissive license but AFAIK nothing like that was seriously considered.

Nit: Apache 2.0 is compatible with GPLv3 (but not v2).


I agree it was intended and I remember Sun talking about that intention at the time. Sun specifically removed the multiple license compatibility language (section 13) from the Mozilla MPL when creating the CDDL:

https://web.archive.org/web/20060816050912/http://www.sun.co...


Interesting, given that the old MPL is GPL-incompatible too.

How would it work anyway? It's not CDDL or MPL that causes the incompatibility, it's the GPL.


FWIW, CDDL is pretty much just Mozilla license. The incompatibility is caused by GPL, which, according to FSF, cannot be linked against anything that's not a subset of GPL. You'd get the same incompatibility if ZFS was covered by GPLv3, for example.


https://www.gnu.org/licenses/license-list.html#CDDL

"This means a module covered by the GPL and a module covered by the CDDL cannot legally be linked together."

I don't think the incompatibilities are really unintended. If anyone has enough lawyers and money to relicense something correctly, it's Oracle.


Except then you'd loose the patent protection provided by CDDL. And you'd cause licensing problems for literally everyone else but Linux. And you probably wouldn't gain anything in the long run anyway; AdvFS was released under GPL and went nowhere.


Even if canonical would be wrong it seems that the change that anyone having a interest to sue Canonical over unintended legal technicality is nil.

ZFS on Linux does not break the intention and spirit of the kernel licence.


Relying on Oracle not to sue people for questionable reasons seems like a precarious position.


So basically the problem with ZFS is that Oracle would sue someone for GPL violation?


Or Linux Kernel people. If you are distributing their work, you can do it because GPL allows it. But for GPL to allow it, you cannot break it or ignore it, otherwise you will lose the distribution rights.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: