I'm surprised this didn't come up sooner, but the situation is a little
different now. First, Sun is pushing ZFS quite a lot, even though it
appears to violate pretty much all of Network Appliance's patents (ZFS
is really not that much more than WAFL + extents + checksums AFAICT).
Considering ZFS will be in Solaris, BSD, and MacOS, perhaps Sun feels
that it is calling NA's bluff on the validity of the WAFL patents.
Second, Oracle is now working on Btrfs (if ever a FS needed a better
name... is that pronounced ButterFS?). Like Daniel pointed out when
doing Tux2, the "hierarchical copy on write" approach used in WAFL, ZFS,
Tux2 and Btrfs is _not_ that new of an idea in the database world.
Maybe Oracle feels they can push out Btrfs because they have some prior
art, or just that they have enough of a patent arsenal to keep NA from
challenging them.
So, it is clear why individual developers and Ext* people would steer
away from the NA patents, but large companies may not have to. The
recent US supreme court ruling may have helped out in that regard.
It's been pretty clear at least in the research world that this is *the*
approach if you want atomic snapshots. COW is the obvious and sane way
to do that, and file systems are trees, so COW on a tree is how you do
efficient atomic snapshots on a filesystem. There are still some issues
with unexpected disk space usage (it requires _additional_ disk space to
_delete_ a file), and it tends to use more memory (you want to delay
client writes as much as possible, so you can allocate later and copy
the least amount necessary), but once users wrap their heads around the
concepts, many feel the benefits outweigh the drawbacks.
If patents hadn't stood in the way, we'd have had this stuff years ago.
At least there is some progress now, and better late than never.
- Jim Bruce
-