Slashdot Mirror


Sun CEO Says ZFS Will Be 'the File System' for OSX

Fjan11 writes "Sun's Jonathan Schwartz has announced that Apple will be making ZFS 'the file system' in Mac OS 10.5 Leopard. It's possible that Leopard's Time Machine feature will require ZFS to run, because ZFS has back-up and snapshots build right in to the filesystem as well as a host of other features. 'Rumors of Apple's interest in ZFS began in April 2006, when an OpenSolaris mailing list revealed that Apple had contacted Sun regarding porting ZFS to OS 10. The file system later began making appearances in Leopard builds. ZFS has a long list of improvements over Apple's current file system, Journaled HFS+.'"

12 of 384 comments (clear)

  1. I'm giving odds... by Telephone+Sanitizer · · Score: 5, Informative

    Well, not in THIS forum. But elsewhere.

    5:1 that it's not the default root file system in Leopard.

    The first bootable release of ZFS (not "BUILD," but "RELEASE") isn't even due until the Fall.

    I'm not alone in this skepticism. See this Ars story, for example.
    http://arstechnica.com/journals/apple.ars/2007/06/ 06/sun-ceo-jonathan-schwartz-zfs-to-be-the-file-sy stem-in-leopard

    1. Re:I'm giving odds... by 0xABADC0DA · · Score: 5, Informative

      Are you kidding? This is ZFS we're talking about.

      ZFS is several orders of magnitude better at streaming large files like are used in video editing, which is already a huge draw for Macs. Since it is copy-on-write, writes are done without seeking so are very fast and can be spread out across multiple drives in parallel. IIRC within a zfs pool (collection of drives) you can make different 'filesystems' mirrored or striped, so you can have a /video that is striped and ultra-fast whereas /home is mirrored and fault-tolerant.

      You can take your 100gb video and instantly say 'snapshot this' then make any number of changes to it and if you don't like it just revert back again. Contrast to every other filesystem (besides spirolog) where you have to make a 100gb copy as a backup -- which takes forever, so nobody does it unless they have to.

      You can drop in a new drive and say 'use this drive' and your existing filesystem instantly has more space available and it is more fault tolerant or faster or both. If you want to remove a drive you say 'dont use this drive' and you can still use the OS normally while it moves data off to other drives.

      Something like ZFS, that "touches so many other applications and parts of the OS" has to be the default. Otherwise you have to support two completely different ways of using the system. And that bloat and complication costs a lot more than just getting it right through extensive testing. If you are really worried about it, don't upgrade the OS for a while.

    2. Re:I'm giving odds... by JimDaGeek · · Score: 4, Informative

      The Move from Classic (OS 9) to OS X forced people to Recompile/Port or Die from obsoleteness
      Not completely true. You can still run classic code, if you really want. I think what Apple did was make cocoa so much better that developers wanted it and users demand it.

      Next it was the move from Power PC to Intel.
      Again, you can run PPC under Intel via Rosetta. Though getting a native Intel build always performs better. Some say they don't notice any difference. I disagree. For example, a PPC build of Photoshop is much slower than a Universal build of the new Photoshop.
      So Apple does leave backwards compatibility stuff there, however they make the new stuff so much better, that developers and users want to get it ASAP.

      Now compare this to Microsoft. While .Net with C# is an improvement for developers in productivity, there is really no gain/difference for users. For example I had to port a legacy VB 6 app to C#/.Net. The end users didn't know anything different about the app from their point of view. Just switching to .Net didn't make the app inherit any default functionality. Contrast this to Cocoa where an app get spell checking via NSSpellChecker.
      --
      General, you are listening to a machine! Do the world a favor and don't act like one.
  2. He's already backpeddled by dancingmad · · Score: 5, Informative

    He's already taken it back, more or less:

    "I don't know Apple's product plans for Leopard so it certainly wouldn't be appropriate for me to confirm anything. [...] There certainly have been plenty of published reports from various sources that ZFS is in Leopard, I guess we will all have to wait until it is released to see if ZFS made it as the default, or if they simply announce that it will become the default in a future release."

    --
    "There is no time, sir, at which ties do not matter," Jeeves, (Jeeves and the Impending Doom)
  3. No no no by Guanine · · Score: 5, Informative
    Then he retracted his statement, saying he didn't know if it was the _default_ or not. Here's his quote, from a link on Daring Fireball:

    I don't know Apple's product plans for Leopard so it certainly wouldn't be appropriate for me to confirm anything. [...] There certainly have been plenty of published reports from various sources that ZFS is in Leopard, I guess we will all have to wait until it is released to see if ZFS made it as the default, or if they simply announce that it will become the default in a future release.


  4. Re:The were going to use Reiser by brunascle · · Score: 4, Informative

    Correct me if I'm wrong, but some sort of ZFS driver is in the Linux kernel
    i dont think there is (could be wrong). something about a licensing problem. but apparently some people have gotten it to work in linux using FUSE. (more info)
  5. Re:Booting from ZFS? by AKAImBatman · · Score: 5, Informative

    When was this functionality added?

    March 28th, 2007 at 19 hundred and 50 hours Zulu time

  6. Re:oblig... by kildurin · · Score: 5, Informative

    Its worth noting that most Sun instructors do not work for Sun. As someone who has implemented and is using ZFS, it really is as good as they say. I use it at home for storing video files and have not suffered any data loss.

  7. Re:case-insensitive: performance, i18n, safety by kithrup · · Score: 5, Informative

    Sorry, but your description of the lookup process isn't right. First: lookup depends on the way directory entries are store. On UFS, it's a non-sorted array; in order to do a lookup, you need to (worst case) scan the entire directory. On VxFS, they use a hash, so first you hash the input, and then do run through the entries that have a matching hash. On HFS+, the catalog is stored as a B-tree, so you do compares to get to the right node, and then look through the node until you either find it or reach the end of the node. Second: None of those is affected by case-insensitivity. You simply do a case-insensitive compare each time. This is the difference between HFS+ and HFSX on Mac OS X: in the former, the key-compare function is a Unicode case-insensitive comparator; on the latter, it's just a memcmp. Third: your comment about "i" is a glyphing issue, not a character issue. Apple has a pretty good technote up on their HFS+ impelementation, and it describes the way the case insensitivity works. I recommend reading it.

  8. Re:oblig... by Cyberax · · Score: 4, Informative

    Windows filesystem kernel API (it's called IFS - Installable File Systems) is fairly well documented, and you can get free GPL2 headers for it (http://www.acc.umu.se/~bosse/ntifs.h) or buy IFS kit from Microsoft for about $109 (http://www.microsoft.com/whdc/DevTools/IFSKit/def ault.mspx). Unfortunately, IFS is a very complex API and there's only ONE good book about it.

    You definitely can port FS to Windows using only documented API, but it's a long and tedious process. I'm currently porting FUSE to Windows, so I know it :)

  9. ZFS still has bugs by mlheur · · Score: 5, Informative

    For something that's only a year or so old (production wise), I don't trust it worth shit.
    We run Netbackup Enterprise on Solaris 10 - during our last round of upgrades we installed ZFS on our disk staging storage units. It replaced VxFS. The way disk staging storage units (DSSUs) work in Netbackup, the disk is always near 100% full form a unix perspective. Basically, any time more disk is needed, the oldest image that has been copied to tape is expired from disk, thus freeing up more room. However, ZFS's most prominent bug from our perspective is that during periods of high activity, if all blocks become allocated, it becomes impossible to unlink(2) a file. This causes the application to no longer be able to make space for new backup images.

    Going down the shell, try to rm a file and it comes back: rm failed, disk is full.

    Well, if the disk is full, and you can't rm because the disk is full, how do you free up space?

    Sun's response, truncate an unnecessary file using 'cat /dev/null > /path/to/file', then, once you have some blocks free, rm works (so does unlink).

    Ok - so how do you tell a compiled application to truncate an unnecessary file before unlinking it? You can't! How can you determine what an unnecessary file is? If you delete the image before expiring it from the catalog you get errors when you try to expire, so you end up with catalog corruption.

    All in all, this is a problem that should never have been introduced, let alone still exist after months of sending trace outputs and reproducing it in multiple environments. ZFS isn't ready for the real world.

  10. ZFS not ready for prime time by SirNAOF · · Score: 4, Informative

    ZFS is not ready for prime time - at least not on Solaris.

    I setup ZFS on some SAN storage in a new system. The internal boot disks were mirrored UFS. When one of the HBAs fried, the SAN storage disappeared - and the system panic'd.

    Every reboot thereafter stopped in a panic. The ZFS subsystem panic'd the system at every boot when it couldn't find all its volumes. After calling Sun support, I found out that they need to do a massive code redesign to catch that issue, and it wouldn't be out for at least 6 months.

    I'm sure ZFS will be great - once they clean up these type of showstopper bugs.

    --
    Jeremy Baumgartner