Slashdot Mirror


Apple Introduces New File System AFPS With Tons Of 'Solid' Features (apple.com)

On the sidelines of its Worldwide Developer's Conference, Apple also quietly unveiled a new file system dubbed APFS (Apple File System). Here's how the company describes it: HFS+ and its predecessor HFS are more than 30 years old. These file systems were developed in an era of floppy disks and spinning hard drives, where file sizes were calculated in kilobytes or megabytes. Today, solid-state drives store millions of files, accounting for gigabytes or terabytes of data. There is now also a greater importance placed on keeping sensitive information secure and safe from prying eyes. A new file system is needed to meet the current needs of Apple products, and support new technologies for decades to come.Ars Technica dived into the documentation to find that APFS comes with a range of "solid" features including support for 64-bit inode numbering, and improved granularity of object time-stamping. "APFS supports nanosecond time stamp granularity rather than the 1-second time stamp granularity in HFS+." It also supports copy-on-write metadata scheme which aims to ensure that file system commits and writes to the file system journal stay in sync even if "something happens during the write -- like if the system loses power." The new file system offers an improvement over Apple's previous full-disk encryption File Vault application. It also features Snapshots (that lets you throw off a read-only instant of a file system at any given point in time), and Clones. According to the documentation, APFS can create file or directory clones -- and like a proper next-generation file system, it does so instantly, rather than having to wait for data to be copied. From the report: Also interesting is the concept of "space sharing," where multiple volumes can be created out of the same chunk of underlying physical space. This sounds on first glance a lot like enterprise-style thin provisioning, where you can do things like create four 1TB volumes on a single 1TB disk, and each volume grows as space is added to it. You can add physical storage to keep up with the volume's growth without having to resize the logical volume.As the documentation notes, things are in early stage, so it might take a while before AFPS becomes available to general users.

193 of 295 comments (clear)

  1. If Swift is any guide... by JoeyRox · · Score: 4, Funny

    This new filesystem should become stable in about 2028.

    1. Re:If Swift is any guide... by Anonymous Coward · · Score: 1

      When it comes to filesystems, waiting for them to be stable is a good thing. It's like letting a recently-bottled wine age a little. If they're only rolling it out as "available to try, but don't use it as a startup disk" for now, that's the right way to handle it. A couple of years of testing will do no harm.

    2. Re:If Swift is any guide... by macs4all · · Score: 1

      This new filesystem should become stable in about 2028.

      That wont stop the fanboys. I'm just waiting for the first one to lose all his data because of this and try and spin it as a good thing!

      Well, everyone on Slashdot calls me a "fanboi"; but I'm here to tell you that neither I, nor any of my other Mac-using friends rush right out and update to ANYTHING even approaching a major release, no matter how tempting it may be to try out some new feature. I have taught them well, to sit back and wait for the idiots to do the "field testing".

    3. Re:If Swift is any guide... by Pikoro · · Score: 1

      This is just a guess, but the reason most people call you a "fanboi" is because of 2 things:

      1. Your username screams "fanboi"
      2. Every single one of your posts promotes macs and apple

      Like I said, just a guess, but, it just could be your fault.

      --
      "Freedom in the USA is not the ability to do what you want. It is the ability to stop others from doing what THEY want"
    4. Re:If Swift is any guide... by PopeRatzo · · Score: 3, Funny

      1. Your username screams "fanboi"

      His first choice for username was "TimCooksTastyBottom" but Apple's board of directors didn't think that was an appropriate Slashdot username for their CEO, so they settled on "macs4all"..

      --
      You are welcome on my lawn.
    5. Re:If Swift is any guide... by jabuzz · · Score: 1

      Couple of years! More like a decade at minimum if you ask me.

    6. Re:If Swift is any guide... by TheRaven64 · · Score: 2

      The general rule of thumb is 10 years between first release that adventurous users trust and solid enough for serious use on important data. ZFS past that point last year. BTRFS will in another three years (or 7 years, depending on how you count). The only exceptions are things like UFS2 and vFAT that are simple extensions to existing filesystems and embedded filesystems that are very simple.

      --
      I am TheRaven on Soylent News
    7. Re:If Swift is any guide... by peragrin · · Score: 3, Informative

      The question becomes is how long has this new fs been under development at Apple? Apple is well known for designing and testing software in the background and only announce it after it has reached a staple point. So it could be 3-5 years in development already.

      I can see it rolling out to Mac users with the next is and bieng default in just 2-3 years.

      --
      i thought once I was found, but it was only a dream.
    8. Re:If Swift is any guide... by JustAnotherOldGuy · · Score: 1

      Couple of years! More like a decade at minimum if you ask me.

      Yep, that sounds more realistic for real-world use. At least 4 or 5 years, but yeah, it'll need some serious real-world testing before any claim of "stable" will be credible.

      --
      Just cruising through this digital world at 33 1/3 rpm...
    9. Re:If Swift is any guide... by JustAnotherOldGuy · · Score: 1

      Well, everyone on Slashdot calls me a "fanboi";/quote>

      Really, macs4all, why in the world would that be? I can't imagine why...

      --
      Just cruising through this digital world at 33 1/3 rpm...
    10. Re:If Swift is any guide... by macs4all · · Score: 3, Informative

      This is just a guess, but the reason most people call you a "fanboi" is because of 2 things:

      1. Your username screams "fanboi" 2. Every single one of your posts promotes macs and apple

      Like I said, just a guess, but, it just could be your fault.

      Anyone who thinks that the gentle wish connoted by my Username is cause for the amount of ad hominem abuse I have received is sadly lacking in online etiquette.

      I actually make many posts on Slashdot that have nothing to do with Apple. Depends on the Thread.

    11. Re:If Swift is any guide... by dgatwood · · Score: 4, Interesting

      So it could be 3-5 years in development already.

      I suspect it has been in progress since Apple's decision to pull ZFS, which offered many of these features... and possibly longer. That's way more than 5 years; in fact, next year (the expected release year), it will have been the ten years that the GP says makes a filesystem trustworthy.

      --

      Check out my sci-fi/humor trilogy at PatriotsBooks.

    12. Re:If Swift is any guide... by macs4all · · Score: 4, Insightful

      Gentle wish? Fuck your gentle wish. You're happy using unjustly overpriced SHIT because you're a dumbass. The rest of us who have more knowledge and experience then you'll ever have in your whole life, know better.

      Been designing computer hardware and software since 1976.

      Fluent in dozens (literally) of Assembly-languages from 6502 to ARM7 TDMI, plus C, PHP, HTML and several BASIC variants. Never did like C++ or Java, though...

      Paid Embedded Developer (hardware and software) for nearly 40 years, with a specialty in R&D of industrial Real-Time measurement and control PRODUCTS.

      Currently Develop Windows ERP Applications.

      Certified MS SQL Server Admin.

      The list goes on...

      Yeah. I'm a dumbass alright.

      STFU.

      I like Apple equipment and OSes precisely BECAUSE I got all that "Work ON my computer" shit out of my system 30 frickin' YEARS ago.

      Apple stuff isn't overpriced; because my time (and frustration) is actually WORTH something.

    13. Re:If Swift is any guide... by drinkypoo · · Score: 1

      Well, everyone on Slashdot calls me a "fanboi";

      That is shocking.

      How do they not know the correct nomenclature is iFanboy?

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
    14. Re:If Swift is any guide... by guruevi · · Score: 1

      "available to try, but don't use it as a startup disk" for now

      You mean like BTRFS or EXT4...

      --
      Custom electronics and digital signage for your business: www.evcircuits.com
    15. Re:If Swift is any guide... by GrahamCox · · Score: 1

      Why does the choice of another person upset you so much? It's really rather bizarre, because I can't see any likelihood that that person's choice of hardware/software affects you in any way.

      I use Macs and PCs, and I also have much more than 30 years experience of software development. Right now, the hardware may have converged, and specs-wise, a PC gives a lot more power/performance per dollar. But install Windows (10) on it, and all that advantage goes to shit in terms of usability and freedom from "issues" that just grind away at your daily will to live.

      Macs every time for just getting stuff done.

    16. Re:If Swift is any guide... by dave420 · · Score: 1

      They call you a fanboy because you clearly are one. Your name screams it.

    17. Re: If Swift is any guide... by macs4all · · Score: 1

      If you have to list your resume to some Internet random poster, you are a dumbass.

      What's it to you? Jealous?

    18. Re:If Swift is any guide... by macs4all · · Score: 1

      They call you a fanboy because you clearly are one. Your name screams it.

      Is that the best you've got? My frickin' USERNAME?

    19. Re:If Swift is any guide... by beastofburdon · · Score: 1

      That's like running around the middle of a small town screaming "I love dick" over and over again, and then wondering how everyone knows you're gay. It is not because they guessed, it is because you announced it loudly in public many times.

    20. Re:If Swift is any guide... by araxius · · Score: 1

      I really think you just "assembled" this list of your specialties, and that is the assembly you know. Just to let you know, these are not consistent. There is no way in hell for a low level "Embedded" programmer to like php and don't like c++. This just can't be the case. And as an embedded coder, why the hell are you a "Certified MS SQL Servern Admin"? and honestly if you are as you say, change that username. That doesn't suit you. P.S. I am typing this on a Mac, And I am an embedded programmer. So I don't think I have any problem with macs, but what you say just doesn't make sense.

    21. Re:If Swift is any guide... by macs4all · · Score: 1

      I really think you just "assembled" this list of your specialties, and that is the assembly you know. Just to let you know, these are not consistent. There is no way in hell for a low level "Embedded" programmer to like php and don't like c++. This just can't be the case.

      Maybe in your little world; but I assure you that every word of my "Skills Overview" is true. And it is in NO WAY complete. My frickin' resume runs to SEVEN pages if I list everything, even in the typical resume "synopsis" form.

      Would it have helped if I also mentioned my LabView/G Experience as well? I forgot about that, as well as my FoxPro, FileMaker Pro, Lotus Notes programming/scripting experience, along with my stint teaching Desktop Publishing for an Adult Continuing Education class? Or would that have also seemed impossible for your widdle brain to contemplate?

      And I just have some sort of mental-block against learning or using C++. I feel like PHP is closer to C than C++. Maybe I just haven't gotten into that deep of a project to see the similarities; but I just sort of approach it as standard C, with Database-y "extensions". Haven't done THAT much in it; but have done a little volunteer web programming, and a little paid programming in PHP. I wouldn't consider myself an expert in web development in any way, shape, or form, though. However, embedded hardware/software development is my true forte.

      And as an embedded coder, why the hell are you a "Certified MS SQL Servern Admin"? and honestly if you are as you say, change that username. That doesn't suit you.

      Well, it's called "getting laid off and having to re-invent yourself." You'll understand some day...

      When you are almost 60 years old and find yourself cast-out of your chosen career path (and, since this was 2009, there wasn't a whole lot of R&D happening in Indiana where I live, and my PAID FOR house is (talk about an "anchor"!!!)), and you hate the fact that what embedded development work there is, has devolved into chasing one 6 month Contract Job after another, ALL of them requiring moving from one end of the country to another (not exactly compatible with my age-group), you tend to opt for a less-than-optimal, but EASY path.

      In my case, that meant a handshake gig at a mom-and-pop (literally!) software consultancy, writing Windows ERP software (yes, I hate it!). Along the way, they needed someone to acquire a SQL Server Admin certificate, and so I studied-up and passed the exam on the first try.

      Even though I am a Mac guy through and through, just like most people that work designing software and hardware, I have had to resort to using Windows stuff for Development some (a lot of) times. And that has often meant doing at least lightweight "Admin" work. So, it isn't like I was unfamiliar with Administration in a Windows environment.

      As for my Username, it reflects my "wish" for the world. So shove off!

      P.S. I am typing this on a Mac, And I am an embedded programmer. So I don't think I have any problem with macs, but what you say just doesn't make sense.

      Sorry, all true.

      And I have done a lot of embedded work using first, Apple ][s, then later, Macs, whenever possible. I was even doing PCB designs on Toaster Macs back in 1984-85 for some stuff I developed.

      Don't get me wrong; I have probably done the majority of my embedded software/hardware work using various Windows tools; but I have also done a few projects where I could do the entire thing on a Mac.

      FORTUNATELY, that's getting a little easier now, with Microchip porting their toolchain to OS X, and other stuff.

      But at this point, I haven't been doing embedded development since early 2009, when I was laid-off due to the recession (and the fact that my new boss (who just happened to be neighbors with the President of the Company I was working-for) didn't like the fact that I knew he was a poser, and basically made no bones about it).

  2. APFS vs AFPS by Anonymous Coward · · Score: 1

    The acronym "AFPS" is incorrectly used in both the summary and the headline. Dylexia, perhaps?

  3. Compression by paulhar · · Score: 3, Insightful

    C'mon, it's 2016. Where is compression?

    1. Re:Compression by Anonymous Coward · · Score: 2, Informative

      because it's 2016 and disk compression isn't necessary for everyday use. You have inordinately cheap disk, and performance far outweighs the need for compression. Sure, you could find lots of value in compression.... and you can get it with file compression utilities. Any compression algorithm that would give anything better than "average" couldn't be stream oriented and would therefore likely kill performance.
      Yes, it could be done. But is it needed? Nope.

    2. Re:Compression by mlts · · Score: 2

      I wouldn't mind deduplication either.

    3. Re:Compression by should_be_linear · · Score: 1

      They probably evaluated that SSD are large enough already, large files on Macs are usually compressed on application level (video), and adding another level of compression would only needlessly drain batteries.

      --
      839*929
    4. Re:Compression by OzPeter · · Score: 1

      C'mon, it's 2016. Where is compression?

      Not there, because Apple is not going to copy Double Space from MS-DOS

      --
      I am Slashdot. Are you Slashdot as well?
    5. Re:Compression by jcr · · Score: 1

      The platform has quite a lot of compression options available in the libraries, so that developers can choose the appropriate methods for the task at hand. Putting compression in the file system is a "one size fits all" approach, and we can do better than that.

      -jcr

      --
      The only title of honor that a tyrant can grant is "Enemy of the State."
    6. Re:Compression by funwithBSD · · Score: 1

      Likely it is some rebranded implementation of ZFS

      --
      Never answer an anonymous letter. - Yogi Berra
    7. Re:Compression by paulhar · · Score: 1

      a) Implication that it's complex to add compression.

      Other common filesystems have it, NTFS, ZFS, BTRFS. Given the amount of money Apple have, I doubt it's that complex.

      b) Disks are cheap.

      Looking at apple.com/uk pricing, the difference between the 512GB SSD and 1TB SSD is £400. And if you choose incorrectly, you can't just open the case up and change it.
      You could then use an external USB, as I do, but sleep/wake doesn't work properly, and endurance on USB keys isn't exactly ideal.
      Or you could hang a whole powered drive off it, but then why have a laptop.

      c) Nobody needs compression

      I've got a couple of hundred GB of virtual machines. I save about 1/3 of the space by just compressing/uncompressing them all the time, but it's a waste.
      I imagine a lot of developers would also find it useful; I'm playing around with 70GB text file I generated as part of some stuff I'm doing, and that compresses down to about 5GB when on my server on ZFS, but then I can't carry it with me (e.g. use on a train).

      I could spin up a VM with ZFS in it, but then I'd need to hard-allocate a bunch of space to a fileserver... and back to square one.

      You may have a different bunch of concerns. SSDs might be plenty big enough for you.

    8. Re:Compression by paulhar · · Score: 2

      I disagree, as ZFS demonstrates >500MB/sec to a compressed filesystem is very achievable, including random I/O access.

      FIle compression utilities don't work well with virtual machines. You can't just start the VM in a zip file...

    9. Re: Compression by RLaager · · Score: 1

      Modern processors can compress with lz4 faster than the disk can handle IO, so it's a net performance increase. That said, as we move into an all-flash world, maybe that doesn't apply.

    10. Re:Compression by macs4all · · Score: 2, Informative

      C'mon, it's 2016. Where is compression?

      Well, it has been part of HFS+ since Snow Leopard (2005). Where have you been?

      So, I would imagine that the new FS will support it as well.

    11. Re: Compression by Drinking+Bleach · · Score: 1

      Random reads and writes work fine, assuming it's sanely implemented. ZFS only compresses per-block (normally up to 128KiB). Reading and writing those blocks doesn't depends on other blocks in the same file. It's not even difficult to have a file on ZFS whose blocks have different types of compression applied to it. Works fine.

    12. Re: Compression by Space+cowboy · · Score: 1

      That's common wisdom, but I don't think it stands up in the modern world. Here's my bonnie results on a softraid-5 partition with a 10GB test file:


        simon% bonnie -s 10000 -m imac
          File './Bonnie.2543', size: 10485760000
          Writing with putc()...done
          Rewriting...done
          Writing intelligently...done
          Reading with getc()...done
          Reading intelligently...done
          Seeker 3...Seeker 2...Seeker 1...start 'em...done...done...done...
                                  -------Sequential Output-------- ---Sequential Input-- --Random--
                                  -Per Char- --Block--- -Rewrite-- -Per Char- --Block--- --Seeks---
          Machine GB M/sec %CPU M/sec %CPU M/sec %CPU M/sec %CPU M/sec %CPU /sec %CPU
          imac 10 29.0 99.3 531.7 27.7 333.0 18.0 26.9 89.5 460.7 16.1 28342 50.5

      Formatting is screwy even in TT mode, but that's saying I can write 530MBytes/sec to, and read 460 MBytes/sec from the SSD RAID attached over TB2 on a 2013 iMac (quad core i7, 3.5GHz).

      Now, creating a 530 MB file and compressing it takes:


        simon% dd if=/dev/random of=test.raw bs=555745280 count=1
          1+0 records in
          1+0 records out
          555745280 bytes transferred in 35.273966 secs (15755112 bytes/sec)

        simon% /usr/bin/time gzip -1 test.raw
                    14.50 real 14.02 user 0.33 sys

        simon% ls -l test.raw.gz
          -rw-r--r-- 1 simon staff 555914267 Jun 14 08:29 test.raw.gz

      ... So allowing for (let's be generous) 2 second's time to read and another 2 seconds time to write the files, that leaves ~10 seconds of time to compress the data, even at the lowest compression gzip can muster. I don't think I'd take a 10x slowdown on my RAID array for (at least in this case) an *increase* in the file-size.

      --
      Physicists get Hadrons!
    13. Re:Compression by MachineShedFred · · Score: 1

      No, but block-level deduplication works wonders with VMs, especially when you have multiple VMs that are all based on the same core OS image...

      --
      Slashdot still doesnâ(TM)t support Unicode after it was added to the HTML standard in 1997.
    14. Re: Compression by RLaager · · Score: 2

      I said lz4, not gzip. The difference is massive.

    15. Re: Compression by TheRaven64 · · Score: 1

      Gzip is completely the wrong algorithm. Modern processors can handle lz4 compression faster than a single SSD can write (around 400MB/s) and decompression a lot faster than one can read (1-2GB/s). lz4 also has quick-fail, so will skip compression when entropy is low (e.g. files that are already compressed or random data), so in your example would add so little latency that it would be hard to measure.

      Your experiment is also putting the compression in completely the wrong part of the pipeline. When reading or writing a large file, you will overlap the compression / decompression with the I/O in a real implementation (i.e. each block is decompressed as it arrives, you don't read 500MB and then decompress the whole lot), whereas you have made them sequential. Oh, and lz4 compression and decompression are easy to parallelise, so on the kind of system where 400MB/s write would be a bottleneck, you probably aren't doing all of the compression on a single core.

      Try creating two ZFS filesystems in the same pool, one with lz4 and one with no compression, then write the same file to them both. You'll see a very small performance difference, but one that will largely be in the noise in normal use. Now change the compression mode from lz4 to gzip-1 (lowest gzip compression ratio) and you'll see a very noticeable drop in performance.

      --
      I am TheRaven on Soylent News
    16. Re:Compression by ArchieBunker · · Score: 5, Insightful

      What kinds of files are people generating today? Pictures and video. What kinds of files are already compressed to begin with? Pictures and video. Compression doesn't make sense unless you have massive amounts of text or database files.

      --
      Only the State obtains its revenue by coercion. - Murray Rothbard
    17. Re: Compression by Space+cowboy · · Score: 1

      Yep, you're right - I misread your comment. The LZ4 variant does indeed do it in time:


      simon% /usr/bin/time lz4 test.raw test.lz4
      Compressed 555745280 bytes into 555745827 bytes ==> 100.00%
                      1.05 real 0.26 user 0.69 sys

      --
      Physicists get Hadrons!
    18. Re: Compression by paulhar · · Score: 1

      > That's common wisdom, but I don't think it stands up in the modern world. Here's my bonnie results on a softraid-5 partition with a 10GB test file:

      Below is proof of that RLaager is accurate.

      root@ViStAr:/fast/temp # bonnie -s 10000 -m zfs
      File './Bonnie.29377', size: 10485760000
      Writing with putc()...done
      Rewriting...done
      Writing intelligently...done
      Reading with getc()...done
      Reading intelligently...done
      Seeker 1...Seeker 2...Seeker 3...start 'em...done...done...done...
                    -------Sequential Output-------- ---Sequential Input-- --Random--
                    -Per Char- --Block--- -Rewrite-- -Per Char- --Block--- --Seeks---
      Machine MB K/sec %CPU K/sec %CPU K/sec %CPU K/sec %CPU K/sec %CPU /sec %CPU
      zfs 10000 382297 99.0 1219601 95.8 716616 97.7 349655 99.9 1859572 99.5 19018.9 44.7

      Another aside Gzip is terrible. Below is proof, but basically, as a benchmark tool it's about the worst thing you can use.

      $ sudo dd if=/dev/random of=test.raw bs=555745280 count=1
      1+0 records in
      1+0 records out
      555745280 bytes transferred in 12.883350 secs (43136706 bytes/sec)
      $ du -hs test.raw
      531M test.raw
      $ sudo /usr/bin/time gzip -1 test.raw
            18.18 real 17.69 user 0.47 sys
      $ ls -la test.raw.gz
      -rw-r--r-- 1 root wheel 555914267 Jun 14 16:45 test.raw.gz

      I can write to a compressed ZFS disk faster substantially faster than you were able to write uncompressed.
      the filesystem being used is ZFS, with compression on.

      Same filesystem with a highly compressable file shows this result:

      $ sudo dd if=/dev/zero of=test.raw bs=555745280 count=1
      1+0 records in
      1+0 records out
      555745280 bytes transferred in 0.493310 secs (1126564044 bytes/sec)
      $ du -hs test.raw
      512B test.raw
      $ ls -la test.raw
      -rw-r--r-- 1 root wheel 555745280 Jun 14 16:50 test.raw
      $ sudo /usr/bin/time gzip -1 test.raw
      test.raw.gz already exists -- do you wish to overwrite (y or n)? y
              3.79 real 2.02 user 0.20 sys
      $ ls -lart test.raw.gz
      -rw-r--r-- 1 root wheel 2425121 Jun 14 16:50 test.raw.gz

      I was able to create the original dataset much faster than gzip was able to recreate it, and compress to a much greater level.
      You can also do a similar thing with an all-ones file and get similar results though you won't get the whole punching effect that was seen with /dev/zero.

    19. Re:Compression by swb · · Score: 1

      Dedupe is more valuable than compression because you can usually find duplication even among unrelated compressed data. I have dedupe enabled on a volume with DVD ISOs and see ~20% compression.

      We had a laugh at work believing that the dedupe was due to plot overlap in the movies.

    20. Re: Compression by Dagger2 · · Score: 1

      And don't forget that's single-threaded, whereas a filesystem (which will split files up into blocks) can use all available cores for compression.

    21. Re:Compression by paulhar · · Score: 1

      I've been using a Mac... including being an early adopter of Clusters.

      HFS+ compression isn't designed for user files, which is why there are no native tools to use it *for end users*.
      There are some hacky command line things you can do, but it's messy, can break, and is totally useless for anything that modifies the file (so, VMs, databases, and the like).

      If you're going to use that, you may as well just zip the file and unzip it before you use it.

    22. Re:Compression by Solandri · · Score: 1

      Deduplication is hugely expensive in memory (have to keep a hash of every file on the drive in memory, since dedupe searches through hashes on disk are painfully slow) and CPU time (have to compare the hash of each new file written to every other file's hash). I played with it on my FreeNAS box, and the memory bloat and performance hit (80-100 MB/s writes turned into 5-25 MB/s writes) was completely unacceptable.

      Deduplication makes sense when you've got multiple copies of large amounts of data (e.g. a file backup of hundreds of users' system drives with the same programs installed on all of them). But for single-computer use, compression works nearly as well or better, with much lower memory and CPU cost.

    23. Re:Compression by jedidiah · · Score: 1

      Putting it in the file system is standardized and transparent. Doing things at a "per application" level runs the risk of making your solution completely incompatible with anything else on your own platform.

      --
      A Pirate and a Puritan look the same on a balance sheet.
    24. Re:Compression by macs4all · · Score: 1

      I've been using a Mac... including being an early adopter of Clusters.

      HFS+ compression isn't designed for user files, which is why there are no native tools to use it *for end users*. There are some hacky command line things you can do, but it's messy, can break, and is totally useless for anything that modifies the file (so, VMs, databases, and the like).

      If you're going to use that, you may as well just zip the file and unzip it before you use it.

      Thanks! I wondered what happened to HFS+ Compression. I remember hearing about it in a WWDC Keynote, and then just forgot it existed.

      Guess I now know why...

    25. Re:Compression by Megane · · Score: 1

      Some form of compressed file support is already in HFS+. I only know this from trying to use "cp -a" to recover data from dying hard drives, and seeing parameter error messages. I eventually realized that cp was trying to copy the extended attribute that says a file is compressed, and when trying to set it on the destination, the file system was saying "oh no you don't!" I only saw this on files that were placed there by the OS installers/updaters.

      --
      #naabhaprzrag, #sverubfr-000, #agi-fcbafberq, negvpyr[pynff*=' negvpyr-ary-'] { qvfcynl: abar !vzcbegnag; }
    26. Re:Compression by Jeremi · · Score: 1

      It's a beta quality release with features everyone else had a decade ago. TFA even compares it to those other systems. I was using copy-on-write in the 90s on the desktop!

      Don't forget to end with "No wireless. Less space than a Nomad. Lame."

      --


      I don't care if it's 90,000 hectares. That lake was not my doing.
    27. Re: Compression by sexconker · · Score: 1

      A 50 MB file is compressed to 12 MB, spanning 96 blocks of 128 KB each. How do I seek to 37.5 MB in the file?

      Hint: You cannot assume equal compression across the full length of the file.

    28. Re: Compression by guruevi · · Score: 1

      Flash drives already use compression and other techniques to minimize writes (and subsequently wear and tear). Especially the cheaper ones will use 'slower' compression just so they don't have to commit to as much (or any) wear leveling or spare blocks.

      --
      Custom electronics and digital signage for your business: www.evcircuits.com
    29. Re: Compression by guruevi · · Score: 1

      That's not how it works. You divide the 50MB file in 391 blocks and each block is then separately compressed. You still get to seek your file to whatever block you want, the compression is 'invisible' to the application.

      --
      Custom electronics and digital signage for your business: www.evcircuits.com
    30. Re:Compression by guruevi · · Score: 1

      Yeah, but then you can't accurately know the cost of de-duplication, additionally you're doing work against already committed files which is a big no-no if you want stable storage. If I commit a file, I don't want a background process to read/write it and a software bug to screw it up years down the road.

      Additionally, you're taking away resources from a system that will already be taxed. My file server has a load of 1.2-2.5 on an average day (because I'm running against the IOPS limits on my 5-year old SSD's), doing ANYTHING (even streaming a backup) has to be meticulously planned so as not to affect the system.

      --
      Custom electronics and digital signage for your business: www.evcircuits.com
    31. Re: Compression by sexconker · · Score: 1

      So take your 50 MB file and break it up into 400 blocks of 128 KB each, then compress each block?

      I can't imagine getting much useful compression over the kind of data that takes up the bulk of user/corporate storage space these days. And that's using your "up to 128 KB". Smaller blocks will result in worse compression. I wouldn't want the CPU/performance penalty, either. (Server primary storage is 4 high-end SSDs in RAID 10.)

      And please, stop trying to make "KiB" happen. It's not going to happen.

    32. Re: Compression by rl117 · · Score: 1

      It doesn't assume that. It's not compressing the whole file as a linear stream like it would with gzip or similar; it's chunked by compressing per-block with repeated rounds of lz4 (or whatever algorithm you picked). It will seek to the start of the first chunk containing the start offset you requested, and start decompressing from there. It works just fine and is completely transparent, including memory mapping and everything. It'll likely retain the whole uncompressed block in the ARC until you write it back or discard it.

    33. Re:Compression by AmiMoJo · · Score: 1

      I did miss an opportunity there, didn't I?

      --
      const int one = 65536; (Silvermoon, Texture.cs)
      SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
    34. Re:Compression by rl117 · · Score: 1

      As jedidiah stated, by putting it in the filesystem it's completely transparent. No program reading or writing needs to care; it just works. To add to that, it's not "one size fits all". With ZFS, you can tune it on a per-dataset basis. Here's a (shortened) sample from my NAS. Whitespace stripping due to slashdot, not me.

      % zfs get compression
      NAME PROPERTY VALUE SOURCE
      red compression off default
      red/data compression lz4 local
      red/data@20150615 compression - -
      red/data@20150724 compression - -
      red/home compression lz4 local
      red/home/rleigh compression lz4 inherited from red/home
      red/home/rleigh@20150616 compression - -
      red/home/rleigh@20150724 compression - -

      As you can see here, lz4 compression is enabled on some datasets, but the default at the root of the pool is off. You aren't limited to lz4, there are other compression options. And in reality, it's much more granular than the dataset level--this is just the default for new files being created in the dataset.

    35. Re:Compression by PhunkySchtuff · · Score: 1

      Yeah, but then you can't accurately know the cost of de-duplication, additionally you're doing work against already committed files which is a big no-no if you want stable storage. If I commit a file, I don't want a background process to read/write it and a software bug to screw it up years down the road.

      Additionally, you're taking away resources from a system that will already be taxed. My file server has a load of 1.2-2.5 on an average day (because I'm running against the IOPS limits on my 5-year old SSD's), doing ANYTHING (even streaming a backup) has to be meticulously planned so as not to affect the system.

      Wow, what are you doing on your server that you're thrashing your SSDs with 500+ IOPS 24/7?

    36. Re: Compression by rl117 · · Score: 3, Insightful
      It depends entirely upon the type of data. See the examples below. Some data gives a little compression; there's a lot of binary data in my homedir which doesn't compress too well. On the other hand, source code, system logs and mail can compress superbly.

      Regarding the "performance penalty", it's generally going to be positive and improve performance. We are talking lz4 here, not gzip/bzip2/xz. It's fast, trading a lower compression ratio for performance. It can compress and decompress blocks in parallel. It can do this much faster than it can read data from disk, so you'll actually improve read and write speeds. And this is on top of ZFS being able to pull data of multiple spindles as the data is distributed over multiple zvols, with redundant copies of data, etc. It's likely not the penalty you think it is. It does multiple rounds of lightweight lz4 compression to reduce the entropy, and it bails out early if poorly compressible.

      % zfs get refcompressratio red/home/rleigh system/usr/ports system/usr/src system/var/log system/var/mail
      NAME PROPERTY VALUE SOURCE
      red/home/rleigh refcompressratio 1.33x -
      system/usr/ports refcompressratio 1.60x -
      system/usr/src refcompressratio 2.16x -
      system/var/log refcompressratio 6.54x -
      system/var/mail refcompressratio 4.99x -

      With compression like this, you no longer need to bother compressing rotated logs. And while the homedir compression is small in comparison, it's gained me an extra 100GiB just for this single dataset, which is not to be sneezed at.

    37. Re: Compression by guruevi · · Score: 1

      Most compression algorithms don't do a dictionary on a 50M extent, they similarly break it up in blocks, otherwise you'd need as much memory as the size of the file and the compression would take ages.. You can get slightly better compression by taking larger block sizes and more time but that largely depends on your application and your algorithm, you have to trade off some of them to make it useful.

      Most files or file changes do not take up 128k either (in my application they are ~16kb each), ZFS can put multiple write requests in a singe write block so if you have 10 writes per second of 10k files/file changes you get the compression across multiple files. Also, you don't have to decompress a file before using it which is usually a nice thing.

      --
      Custom electronics and digital signage for your business: www.evcircuits.com
    38. Re:Compression by guruevi · · Score: 1

      Hosting ~200TB worth of MRI data for ~100 workstations (collection, analysis etc) and a number of external links. 200TB of ~4-20kb individual files

      --
      Custom electronics and digital signage for your business: www.evcircuits.com
    39. Re:Compression by guruevi · · Score: 1

      IOPS are in the order of ~5000 read and ~1000 write. These are SLC SSD's which are hardly available anymore.

      --
      Custom electronics and digital signage for your business: www.evcircuits.com
    40. Re:Compression by PhunkySchtuff · · Score: 1

      Wow, that's a pretty intense workload! Yes, it's very difficult to get SLC SSDs these days, everyone has gone for MLC, even the Intel DC grade units...

    41. Re: Compression by cthulhu11 · · Score: 1

      Few years back I used a compressing ZFS filesystem for a central syslog server. I got ~30x compression and had 1.5 years of logs on like a 146GB filesystem. That's why compressing filesystems rock. Because not every computer is a home desktop full of porn.

  4. Good Luck by bill_mcgonigle · · Score: 3, Insightful

    It's a hard job. We're into year fifteen of ZFS and it's just starting to gain some features that make administration of it manageable by non-experts. Give it another five before you want to make it your default on a desktop for grandma. BTRFS will be along five years after that.

    If Apple can pull off something similar in a couple years, it will be a major triumph. It's too bad for everybody that Steve got bitchy at Jonathan and the community hasn't had Apple's help as a contributor for the past decade.

    --
    My God, it's Full of Source!
    OUTSIDE_IP=$(dig +short my.ip @outsideip.net)
    1. Re:Good Luck by jcr · · Score: 1

      It's too bad for everybody that Steve got bitchy at Jonathan

      You don't know what you're talking about.

      -jcr

      --
      The only title of honor that a tyrant can grant is "Enemy of the State."
    2. Re:Good Luck by macs4all · · Score: 1

      It's too bad for everybody that Steve got bitchy at Jonathan and the community hasn't had Apple's help as a contributor for the past decade.

      I'm pretty sure it was ZFS' assimilation by Oracle that put the brakes on that deal.

    3. Re:Good Luck by Britz · · Score: 1

      Rumors say the only reason OSX didn't go ZFS was because Jonathan Schwartz spilled the beans. Either Steve Jobs gets to make the announcement about the 'next big thing' in his big Apple presentation or there is no 'next big thing'.

      Here is the Slashdot story from 2007:

      https://apple.slashdot.org/sto...

    4. Re:Good Luck by geek · · Score: 1

      They didn't go with ZFS because it was case-sensitive and at the time that was a major problem, not just for the OS but all of the apps written for it. They had just migrated to intel from PPC and didn't want to impose that on developers yet. There was also some murky licensing issues they didn't want to gamble with.

      Now APFS has the same case-sensitive problem (for them) but they finally realize HFS+ just can't scale and continue as it is. Apple has finally realized their stubbornness is holding them back.

      What is confusing is why they are writing their own FS when they could easily contribute to BTRFS or ZFS.

    5. Re:Good Luck by Dagger2 · · Score: 1

      You can actually set ZFS to be case-insensitive, on a per-dataset basis, with the casesensitivity=sensitive|insensitive option. Support for that was added in 2007, so I guess it was pretty new at the time.

    6. Re:Good Luck by guruevi · · Score: 1

      ZFS has more problems than just some interpersonal issue. The license itself is not compatible with either BSD (which is what OS X is based on) nor GPL (which is what most Linux licenses stuff as). The OpenZFS project had and still has to rip out major parts out of ZFS/Solaris and rewrite it so it compiles on an open compiler (unlike Sun/Oracle's license) and doesn't impose on the Sun (now Oracle's) not-so-open CDDL license.

      Additionally after Oracle took over, code for Solaris or ZFS is now only accessible if you pay a hefty Solaris license/maintenance fee.

      --
      Custom electronics and digital signage for your business: www.evcircuits.com
    7. Re:Good Luck by rl117 · · Score: 1
      The licence is most certainly compatible with BSD. It's included in FreeBSD base for crying out loud!

      % uname -srm
      FreeBSD 10.3-RELEASE-p4 amd64
      % find /boot -name '*zfs*'
      /boot/zfs
      /boot/zfsloader
      /boot/zfsboot
      /boot/gptzfsboot
      /boot/kernel/zfs.ko
      /boot/kernel/zfs.ko.symbols
      % find /usr/src/ -name '*zfs*' | wc -l
      120

    8. Re:Good Luck by dgatwood · · Score: 1

      Here's hoping they don't make APFS support case-insensitive storage. It periodically causes major headaches for developers writing iOS apps when they make some typo and create a binary that runs fine on the simulator and fails on the device. It also means that certain companies (e.g. one large photo editing app company whose names rhyme with "A Toby") don't bother testing on case-sensitive volumes, leaving users who actually need case sensitivity in a world of hurt.

      I would love it if Apple jerked the rug out from under those sorts of companies and made them fix their bugs.

      --

      Check out my sci-fi/humor trilogy at PatriotsBooks.

    9. Re:Good Luck by guruevi · · Score: 1

      OpenZFS, Oracle's ZFS (which does differ since roughly OpenSolaris snv_149) does at this point not have any source code available in the 'open'.

      --
      Custom electronics and digital signage for your business: www.evcircuits.com
  5. This has been my biggest gripe about OS X/macOS... by mlts · · Score: 4, Informative

    I'm glad Apple has introduced this. As of now, the snapshot API and others are not present, but now Apple is on parity with everyone else in the industry.

    APFS isn't like ZFS or btrfs, but more like ReFS in the fact that it still requires a logical volume manager. It would be nice if it had RAID, but that is a minor item, compared to just getting rid of HFS+, which just had to be killed.

    Some features I like:

    The ability to encrypt volumes with multiple volume keys. It looks like it will be similar to Oracle's ZFS on Solaris, but the implementation can be completely different.

    Snapshots. Something like zfs send and zfs send -i will be quite useful for backups.
    Copy-on-write capability, which is useful for VMs.

    Of course, it appears that Apple will be documenting and publishing the FS's specs in 2017, which will be even more useful for compatibility.

    All and all, even though there is no RAID 5/RAID-Z, or LVM replacement, this is a heck of a lot better than what OS X/macOS has now.

  6. Re:Did they make their own from scratch? by mlts · · Score: 1

    I was hoping Apple would license ZFS or even Veritas Volume Manager/Veritas FS from Symantec. Heck, even ReFS from MS. However, with all the cash they have, I am happy they are putting out something. I wouldn't expect it to be a default filesystem until 2017, perhaps 2018, as filesystems are something never to be undertaken lightly, but long term, it is crucial to macOS's usefulness, especially as SSDs get larger, and TRIM support is more critical to performance.

  7. Re:NIH? by mlts · · Score: 4, Insightful

    Licensing. Apple did flirt with ZFS, but for some reason, and I would guess it was license issues, they decided not to go that route. Using btrfs would bring GPL/BSD licensing issues. So, Apple either had to license something like ReFS from MS, or roll their own.

  8. Re:2016? crypto-ransom protection !! by ripvlan · · Score: 1

    Compression? why - to compress all of those mp3 and mp4 video files? Or your TXT docs?

    I was thinking that a current issue is the crypto-ransom stuff and that a FS needs to version on-demand. Sure everyone is *supposed* to have backups. I don't know what the Mac world is like but most PC folks I know do a file-copy to a USB drive (if they do anything at all). I'm not talking about what smart IT folks do - referring instead to general users.

    How many people have a time machine? (and is that good enough?)

  9. Swift is stable. by Anonymous Coward · · Score: 1, Interesting

    Swift is stable. Swift 2 has provided a very solid foundation that thousands upon thousands of developers have used to create many real-world applications with.

    Yes, there is Swift 3 in the works. What, are you really suggesting that Apple shouldn't try to improve Swift? Are you saying that they should let it stagnate, just to meet your strange definition of "stable"?

    Even when Swift 3 is released it doesn't mean you won't be able to use Swift 2 any longer. If you've got old Swift 2 code, then keep on using the Swift 2 compiler and toolset!

    But if you want the benefits that Swift 3 brings, then by all means you'll be able to use it, too. Will you have to make some changes to your existing Swift 2 code to get it to work with Swift 3? Perhaps! But that's a perfectly reasonable cost if you want to make use of newer functionality.

    You sound like one of those fools who moans about Python 2 versus Python 3, not realizing that it has actually gone very smoothly. Python 2 users weren't forced to upgrade when they didn't want to, and in fact they'll be able to use Python 2 for years to come! Python 3 was able to bring some serious improvements to the table. Users who wanted to use Python 3 had the freedom to do so. The major libraries all supported Python 3 very quickly, and the only ones that didn't are niche libraries that few users care about.

    Maybe you have some personal vendetta against Swift. Maybe you're a Rust supporter who has seen his language flail miserably and then fail miserably, while Swift gets better and better. Regardless of why you don't like Swift, the fact remains that Swift 2 is stable, Swift 3 will soon be stable, and despite all of your bitching and moaning about this "instability" that doesn't exist there will be thousands, if not millions, of developers using Swift to accomplish great things.

    1. Re: Swift is stable. by hsmith · · Score: 2

      Lack of backwards compatibility is the issue. You shouldn't have to refactor your entire code base once a year (oh and Xcode doesn't support Swift refactoring). That is the gripe. Move the language forward, don't break it yearly. Swift is a nice language, I enjoy using it, but this is a big issue.

    2. Re:Swift is stable. by mlts · · Score: 4, Funny

      Swift 2 is stable enough that I get occasional calls from recruiters asking for five years of it as a language for dev jobs. So, if it is good enough to transcend time/space, it should be stable enough.

    3. Re: Swift is stable. by Anonymous Coward · · Score: 1

      Lack of backwards compatibility is the issue.

      No, it's not. Like the GP comment says, you can keep using Swift 2.

      You shouldn't have to refactor your entire code base once a year

      That's right, you don't have to. You can keep using Swift 2.

      Move the language forward, don't break it yearly.

      Swift 3 doesn't break Swift 2. You can keep using Swift 2 this year, next year, or however long you need.

      this is a big issue

      It isn't at all. You only think it is because you've convinced yourself that you can't just keep using Swift 2 if you don't want to upgrade to Swift 3.

    4. Re: Swift is stable. by Anonymous Coward · · Score: 4, Insightful

      What a ridiculous argument.

      By that logic, backwards compatibility is never an issue. Why even try to offer it? You can just keep using the old version! Compatibility solved!

    5. Re:Swift is stable. by Darinbob · · Score: 2

      It's HR boilerplate. They know nothing about the technology, but they know that for entry level they want degree plus course work in $X, for junior they want 5 years $X, and for senior they want 10 years $X and $Y. I've read a job description for our group once and showed it to my manager asking what position it was for, and he replied "wait, that's not what I wrote!"

    6. Re: Swift is stable. by cerberusss · · Score: 1

      I enjoy using it, but this is a big issue.

      Hmmm is it that big of an issue? I moved a large code base, guesstimate 100-150K lines, from swift 1.2 to 2.0 in about 2 days.

      --
      8 of 13 people found this answer helpful. Did you?
  10. Re:2016? crypto-ransom protection !! by mlts · · Score: 1

    With ransomware on the rise, having a filesystem that can take snapshots, perhaps coupled with a version of Time Machine that works on snapshots will help provide some mitigation. If the ransomware doesn't have root, it can't purge snapshots, although it can do mayhem in other places.

    I would say Time Machine is OK for an "oh shit" backup for bare metal restores, but I wouldn't really rely on it as my sole way to retrieve data, because I've had instances where TM backups got hopelessly corrupted. I would probably recommend TM + Borg Backup or another utility, ideally a utility that can pull the data, so ransomware cannot get near the backup repository to destroy any existing data. Barring that, there is always Carbonite or Mozy, but one has to be aware of the security implications of dumping to the cloud.

  11. Not Invented Here Syndrome? by mi · · Score: 4, Informative

    I was hopiing Apple would license ZFS

    ZFS is under CDDL and would not even need to be "licensed" in the usual sense — it is free for anybody to take. "Too free" for certain zealots, in fact, which is why it was not part of Linux kernel for a while — until the supposed "license incompatibility" myths got debunked.

    Even Linux now offers ZFS — Apple would've had a much easier time porting it, because MacOS is already FreeBSD-based and the FreeBSD-project had ZFS available "out of the box" for several major releases spanning many years.

    What did Apple find lacking about ZFS, that would justify creating their own, is, indeed, a mystery. Probably, a case of the Not Invented Here Syndrome. Sad...

    --
    In Soviet Washington the swamp drains you.
    1. Re:Not Invented Here Syndrome? by Anonymous Coward · · Score: 1

      > [...] "Too free" [...] zealots [...] incompatibility myths [...] debunked

      You an agenda?

    2. Re:Not Invented Here Syndrome? by Anonymous Coward · · Score: 4, Informative

      Apple was working on ZFS support from 2007 (there was read only support in snow leopard) to 2010 or so. From what I've heard, they dropped it for legal reasons. Nope, not the CDL, not the Oracle/Sun buyout (Jobs and Ellison were good friends), but the NetApps ZFS lawsuit.

    3. Re:Not Invented Here Syndrome? by MachineShedFred · · Score: 4, Informative

      They actually had ZFS working for 10.6, but scrapped it because they couldn't come to terms with Sun. The package was on MacOS Forge back in the day, and the lead developer of it left Apple shortly afterward and created his own 3rd party implementation.

      This was before ZFS was licensed under CDDL.

      --
      Slashdot still doesnâ(TM)t support Unicode after it was added to the HTML standard in 1997.
    4. Re:Not Invented Here Syndrome? by TheRaven64 · · Score: 4, Interesting

      It wasn't before ZFS was CDDL, ZFS was CDDL from the start. I've heard two conflicting explanations of why Apple dropped support (after publicly announcing it) from different people in their CoreOS team. One of them involved Apple wanting a proprietary license (CDDL is per-file copyleft, so Apple would have had to release changes that they made to any of the ZFS files) with terms that Sun/Oracle wouldn't grant, though I get the impression that the NetApp lawsuit may have been more of an issue.

      --
      I am TheRaven on Soylent News
    5. Re:Not Invented Here Syndrome? by cshamis · · Score: 1

      I suspect the problem was as much architectural as it was with the license. ZFS is considerably dependent on assumptions in memory management that were designed with Solaris in mind. Solaris and BSD (and Linux for that matter) have very different approaches to memory allocation and deallocation. Much of the work done in the ZFS on Linux (ZoL) project has focused on re-optimizing the direct-memory functions of ZFS. So that might have factored in their decisions.

    6. Re:Not Invented Here Syndrome? by Anonymous Coward · · Score: 1

      AFPS will be rolled out to ALL Apple hardware. Explain how ZFS would work on a WATCH or a PHONE? Hell, it's not even technically recommended on non-XEON processors such as i7 and i5. What Apple have done is created something tailored to ALL their hardware, and they should be commended for it.

    7. Re:Not Invented Here Syndrome? by jedidiah · · Score: 2

      > Apple has money that's vulnerable to baseless patent infringement lawsuits.

      Creating your own separate implementation doesn't stop that.

      --
      A Pirate and a Puritan look the same on a balance sheet.
    8. Re: Not Invented Here Syndrome? by jimbo · · Score: 1

      I don't know ZFS well but was under the impression it's for file servers. How suitable is it for phones/tablets/desktops? Can somebody weigh in on this?

      I've seen high RAM/CPU usage mentioned and I'm sure it wasn't built with SSD in mind.

    9. Re: Not Invented Here Syndrome? by mi · · Score: 1

      I don't know ZFS well but was under the impression it's for file servers.

      It is, literally, for everything. Some of the features only make sense if you have multiple physical drives — devices, that are unlikely to fail at the same time. But compression, deduplication, snapshots, encryption — these are all useful on anything.

      --
      In Soviet Washington the swamp drains you.
    10. Re:Not Invented Here Syndrome? by Burz · · Score: 1

      What did Apple find lacking? Read the summary: File cloning and multiple 'subvolumes' that can share allocation units. That sounds more like Btrfs to me.

    11. Re:Not Invented Here Syndrome? by willy_me · · Score: 1

      I would assume the reasons were more technical. Apple was fully capable of working out a deal if they thought it would be of value. The problem with ZFS is that it consumes more hardware resources. This is fine for a server because with additional hardware it performs quite well. People buying a server generally do not care about a couple gigs of RAM. But considering that Apple was selling laptops outfitted with 512MB - it was not a good fit. Any filesystem supported by Apple would also have to operate well over USB. If FreeBSD support for ZFS over USB is any indication, it is a bad idea (as I experienced with FreeNAS.)

      If there were no legal problems then it is possible Apple would have continued to integrate ZFS with the plan of eventually switching over. But regardless of the legal problems, that switch would not have occurred right away. Looks like Apple supported ZFS just long enough to come to the conclusion that it was not a good fit.

      I love ZFS on my fileserver. I am tempted to run ZFS on my workstation. But for the majority of computers Apple sells today, it would cause users more pain then it should.

    12. Re:Not Invented Here Syndrome? by nwf · · Score: 1

      I would assume the reasons were more technical. Apple was fully capable of working out a deal if they thought it would be of value. The problem with ZFS is that it consumes more hardware resources. This is fine for a server because with additional hardware it performs quite well. People buying a server generally do not care about a couple gigs of RAM. But considering that Apple was selling laptops outfitted with 512MB - it was not a good fit. Any filesystem supported by Apple would also have to operate well over USB. If FreeBSD support for ZFS over USB is any indication, it is a bad idea (as I experienced with FreeNAS.)

      That's probably one reason. Apple stated that APFS will run on the Apple Watch on up to the Mac Pro. Their cloning functions seem taylor designed for their Time Machine backup. It's also optimized for flash and SSD storage, and supports flexible encryption. I heard no mention of volume concatenation or redundancy features like many modern file systems offer, but most Mac users would never need that.

      --
      I don't know, but it works for me.
    13. Re:Not Invented Here Syndrome? by Agripa · · Score: 1

      What did Apple find lacking about ZFS, that would justify creating their own, is, indeed, a mystery.

      Maybe they were afraid of being sued by Oracle.

    14. Re:Not Invented Here Syndrome? by TheRaven64 · · Score: 1

      I would assume the reasons were more technical.

      Apple had ZFS working in the betas.

      Apple was fully capable of working out a deal if they thought it would be of value.

      Spoken like someone who has no experience with Oracle's legal department.

      The problem with ZFS is that it consumes more hardware resources

      You might be surprised. It's quite useable on a laptop and Samsung had a slightly cut-down version of ZFS working well on mobile phones with 4MB of RAM.

      --
      I am TheRaven on Soylent News
    15. Re:Not Invented Here Syndrome? by illtud · · Score: 1

      re ZFS, see my post at the end of this story.

    16. Re:Not Invented Here Syndrome? by illtud · · Score: 1

      MachineShedFred, re ZFS, see my post at the end of this story.

    17. Re:Not Invented Here Syndrome? by illtud · · Score: 1

      AC, re ZFS, see my post at the end of this story.

  12. Bring on OJFS by tepples · · Score: 1

    I was hoping Apple would license ZFS or even Veritas Volume Manager/Veritas FS from Symantec.

    I thought Veritas was also called Online Journaled File System (OnlineJFS or OJFS). What else is OJFS?

    1. Re:Bring on OJFS by jittles · · Score: 4, Funny

      I was hoping Apple would license ZFS or even Veritas Volume Manager/Veritas FS from Symantec.

      I thought Veritas was also called Online Journaled File System (OnlineJFS or OJFS). What else is OJFS?

      OJFS? Why do you computer types insist on naming your filesystems after murders?

    2. Re:Bring on OJFS by Anonymous Coward · · Score: 2, Funny

      Well there's ReiserFS. At least there's precedent.

    3. Re:Bring on OJFS by Keybounce · · Score: 1

      Wasn't he found not guilty in the murder trial? Something about gloves not fitting?

  13. I've got a crazy idea by cyber-vandal · · Score: 3, Insightful

    How about letting users unplug removable media without having to eject it first like every other OS has had for about a decade.

    1. Re:I've got a crazy idea by Anonymous Coward · · Score: 1

      Technically *all* of them allow it, because they can't physically prevent it. None of them can guarantee that you aren't corrupting the media in the process, though.

    2. Re:I've got a crazy idea by 93+Escort+Wagon · · Score: 1

      How about letting users unplug removable media without having to eject it first like no other OS has.

      There is no OS in existence that allows that.

      As a Mac user, I've noticed that Windows 8 and up seem to handle that particular situation just fine.

      --
      #DeleteChrome
    3. Re:I've got a crazy idea by Feral+Nerd · · Score: 2

      How about letting users unplug removable media without having to eject it first like no other OS has.

      There is no OS in existence that allows that.

      As a Mac user, I've noticed that Windows 8 and up seem to handle that particular situation just fine.

      Linux and MacOS (AFAIK) use write caching which makes it a good idea to eject USB drives on these operating systems (caveat: it's been about a years since I last checked this, things may have changed). Windows on the other hand does not "handle USB drive yanking just fine", it just disables the write cache for external which reduces the chances of file system corruption but does not eliminate it 100%. Disabling the write cache also slows performance (according to the Windows device properties menu, policies tab). Generally it is always a good idea to eject your drive unless you have a journaled file system on it which should theoretically be able to recover from yanking related corruption. Having said that I'd still recommend disabling write caching on your system if you are a habitual yanker.

    4. Re:I've got a crazy idea by iCEBaLM · · Score: 1

      Don't know what you're on about, I still have to do that shit on Windows 10 and Linux....

    5. Re:I've got a crazy idea by Anonymous Coward · · Score: 1

      As did Windows 7, XP and so on. They simply mount the removable media with out any write caching enabled. 99% of the time it works. On the off occasion if you pul the plug the moment your file copy finished your FAT partition would self destruct.

      *Remembers that time as a desktop support guy in a University and the student the probably did this with their thumb drive that held the only copy of their PhD or what ever it was (seriously these people do this for real, when they all get 30GB Google accounts for free), I got their data back after some work with a recovery tool. Guess it was their lucky day.

    6. Re:I've got a crazy idea by Anonymous Coward · · Score: 5, Informative

      Having occasionally yanked out removable media on OS X without properly ejecting it, you can do so now. But you run the same risks as every other OS and commonly-used filesystem: that things will be corrupted in the process and have to be fixed the next time you insert the drive.

      What are these "other OS" you speak of? Windows? No. It will happily corrupt files depending upon what you are doing with the drive in question at the time you yank it out. Likewise Linux and most of its filesystems. Modern journaled filesystems are likely to be able to put things back into some semblance of order in the aftermath, but if you think it is routine to be able to do this without special setup you are mistaken.

      The only thing I've noticed is that Windows will complain less frequently when you yank out a device, whereas OS X will reliably and correctly warn you that doing so is dangerous and not recommended unless you eject it in software first. In fact, OS X is better at informing you which program has files open on the device when you attempt to eject it, whereas Windows will just vaguely tell you that something is still holding up the process. Oh, and Windows "helpfully" disables write caching to slow down your pluggable devices in an attempt to diminish the likelihood you'll corrupt something. Whether you consider that truly helpful or not is debatable. It's a significant tradeoff.

    7. Re:I've got a crazy idea by 93+Escort+Wagon · · Score: 1

      We used to have a faculty member here who would keep all her work in her email - papers she was writing, proposals she was working on, etc. So we'd get these panicked phone calls to our computing group phone # "I have a proposal due today and can't get to my email!" (no, we weren't staffed to cover the night shift - so she'd then whine to the Chair about how many hours she'd had to wait when she had this big proposal due and we were "obstructing" her)

      Fortunately she moved on to bigger and better things several years ago... she became the dean at another university's engineering department. Not surprisingly, that didn't last either - I'm not sure what she's doing now.

      --
      #DeleteChrome
    8. Re:I've got a crazy idea by 93+Escort+Wagon · · Score: 1

      Generally it is always a good idea to eject your drive unless you have a journaled file system on it which should theoretically be able to recover from yanking related corruption.

      When I'm on a Windows computer (which fortunately isn't that often), I've always ejected external media just to be safe. Thing is, I was recently on a Windows 10 machine and didn't see that option even available to me.

      --
      #DeleteChrome
    9. Re:I've got a crazy idea by Solandri · · Score: 1

      How about letting people drive away from the gas station without first having to remove the pump nozzle from their car?

      The eject command forces the filesystem to flush any read/write buffers. It completes only when anything that's being written to the removable media or read from it has finished. So if you remove the media without first ejecting it, there's a risk that some data never finished writing and you have a corrupt file(s) on the media instead of the files you think you had, or something else the computer was doing which relied on reading data from the media either crashes or never completes. Every competent OS has had an eject command for removable media. The only way to avoid it is to eliminate read/write buffers. Which means your computer would have to completely freeze and block you from doing anything else with it until the read/write operation completed.

    10. Re:I've got a crazy idea by RatherBeAnonymous · · Score: 1

      Yeah, a journaling file system should protect you from file corruption. But if you yank the drive out in the middle of a write it should roll the file back to the previous version. You can still loose the data that's in flight unless you properly eject your media.

    11. Re:I've got a crazy idea by Archimonde · · Score: 1

      You're wrong:

      http://windows.microsoft.com/en-us/windows7/safely-remove-devices-from-your-computer

      Windows (7 at least) allows it and won't complain that you've unplugged your device before you've ejected it. I hate this so much on my Mac though.

      --
      Trolls are like broken clocks. They show the truth two times a day. The rest of the day they talk nonsense.
    12. Re:I've got a crazy idea by enriquevagu · · Score: 2

      The parent is right.

      But not only that. The flash controller could be running a background process, such as offline deduplication or data block movement for static wear levelling. These processes are *not* triggered by reads or writes from the OS, so even when you are not actively writing to the disk, simply removing it without ejecting *might* cause data corruption and data loss.

    13. Re:I've got a crazy idea by drinkypoo · · Score: 1

      Don't know what you're on about, I still have to do that shit on Windows 10 and Linux....

      Windows since around XP (maybe 2k) has mounted removable media write-through by default, and is pretty good at detecting and correcting errors on FAT32 media. Most Linux distributions also mount removable media as write-through (e.g. "May 12 19:09:57 hostname kernel: sde: assuming drive cache: write through") so in fact you can just yank out an SD card or USB flash drive once writes are complete, and they complete as rapidly as the command suggests.

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
    14. Re: I've got a crazy idea by cyber-vandal · · Score: 1

      No you don't. You pull the drive out and it doesn't complain. You put the drive back in and all your files are still there. Apparently there's a miniscule chance of disk corruption but I've yet to come across it even on FAT16 never mind NTFS.

    15. Re:I've got a crazy idea by TeknoHog · · Score: 1

      Every competent OS has had an eject command for removable media. The only way to avoid it is to eliminate read/write buffers. Which means your computer would have to completely freeze and block you from doing anything else with it until the read/write operation completed.

      I remember Windows doing exactly this in the age of floppies. It may have been due to the lack of true multitasking, but in any case, there was no "umount" for floppies in Windows 9x. An explicit umount command is the price to pay for a properly multitasking OS, where things like disk I/O can happen in the background.

      --
      Escher was the first MC and Giger invented the HR department.
    16. Re:I've got a crazy idea by MobyDisk · · Score: 1

      An explicit umount command is the price to pay for a properly multitasking OS, where things like disk I/O can happen in the background.

      It is the price to pay for write-back caching.

    17. Re:I've got a crazy idea by Uberbah · · Score: 1

      The parent is right.

      Not really:

      • Performance boost of write caching
        Reliability of written data
        Convenience of not having to eject

      Pick any two.

    18. Re:I've got a crazy idea by Bert64 · · Score: 1

      AmigaOS allowed that, it wouldn't complain unless the media was actively being accessed at the time. AmigaOS didn't even have a way to "eject" media in software by default.

      --
      http://spamdecoy.net - free throwaway anonymous email - avoid spam!
    19. Re: I've got a crazy idea by cyber-vandal · · Score: 1

      I have done this countless times on Windows and have never had a problem. Neither have any of the people who come to me for tech support. Why can't Apple users have the same?

    20. Re:I've got a crazy idea by Keybounce · · Score: 1

      Really? Every floppy-based OS I've used has permitted this.

    21. Re:I've got a crazy idea by Lotus456 · · Score: 1

      The original Mac system allowed you to eject a floppy but leave it mounted. It left a grayed-out "ghost" floppy on the desktop and would request that you re-insert the floppy if you tried to access it. "Put away" (meaning unmount) was a separate action from "eject."

      They did it that way because there was only one floppy drive and no hard drive, and sometimes you had to change floppies while running an app from another floppy.

      --
      "It's a good computer... for I to BM on!" - apologies to Triumph, the insult comic dog
    22. Re:I've got a crazy idea by Barlo_Mung_42 · · Score: 1

      When a usb drive is yanked out the driver gets a IRP_MN_SURPRISE_REMOVAL message. If it was busy writing stuff to the disk it says "Wait, I was using that!" and the OS displays a message to the user that they should have waited until the copy etc was done. If the user isn't an idiot and removes it when things aren't being written to it the driver says "Oh, that's all well and good. I wasn't doing anything anyway" to which the OS sends down the detatch message and the driver cleans up before going away.

      It's not that hard. I have no idea why the people at Apple can't figure it out.

  14. Re:Did they make their own from scratch? by macs4all · · Score: 1

    I was hoping Apple would license ZFS or even Veritas Volume Manager/Veritas FS from Symantec. Heck, even ReFS from MS. However, with all the cash they have, I am happy they are putting out something. I wouldn't expect it to be a default filesystem until 2017, perhaps 2018, as filesystems are something never to be undertaken lightly, but long term, it is crucial to macOS's usefulness, especially as SSDs get larger, and TRIM support is more critical to performance.

    I don't know anything about Veritas FS; but I have looked long and hard at ZFS; but the continued major issues with ZFS on macOS, with Finder integration and more, while getting SLOWLY better (and which would no doubt get better with Apple's access and engineering), still signal that ZFS just isn't ready for Prime-Time on OS X, much to my chagrin.

  15. Re:NIH? by CrashNBrn · · Score: 4, Insightful

    Would you want to be licensing anything from Oracle today?

  16. Re:This has been my biggest gripe about OS X/macOS by CrashNBrn · · Score: 1

    Aye. Whereas almost all of Microsoft's filesystem advances are hidden in shadow-copies and inaccessible system folders. Or enterprise-version only RAID-like features. We can't even freaking tag files n folders unless they are "media" files.

  17. Transparent decompression through OSXFUSE by tepples · · Score: 1

    You have inordinately cheap disk

    Because of Apple's tendency to solder the SSD to the mainboard in the Mac Pro and all current MacBook laptops other than the non-Retina MBP, an upgrade requires replacing the whole computer at a substantial cost. Only external storage is "inordinately cheap" on a Mac, and not all laptop use cases make external spinning rust practical.

    Sure, you could find lots of value in compression.... and you can get it with file compression utilities.

    That's fine, so long as these utilities can let the user mount an archive read-only as a folder and thereby let other applications see the archive's contents as files in as a folder. Does macOS Sierra introduce anything that interferes with OSXFUSE?

    1. Re:Transparent decompression through OSXFUSE by PhunkySchtuff · · Score: 1

      You have inordinately cheap disk

      Because of Apple's tendency to solder the SSD to the mainboard in the Mac Pro and all current MacBook laptops other than the non-Retina MBP, an upgrade requires replacing the whole computer at a substantial cost. Only external storage is "inordinately cheap" on a Mac, and not all laptop use cases make external spinning rust practical.

      I don't know what Mac Pro you're looking at that has the SSD soldered to the mainboard, but in the one on my desk, the SSD is a PCIe interface that's plugged into a socket on the back of one of the graphics cards. There are even third party replacements for them: https://eshop.macsales.com/sho...

      Sure, you could find lots of value in compression.... and you can get it with file compression utilities.

      That's fine, so long as these utilities can let the user mount an archive read-only as a folder and thereby let other applications see the archive's contents as files in as a folder. Does macOS Sierra introduce anything that interferes with OSXFUSE?

      You mean like creating a compressed .dmg disk image (a capability that's existed all the way back to 10.0.0) that (by default) is mounted in /Volumes/[disk name] but from the Terminal can be mounted anywhere you like?

  18. Precursor to virtualization? by pak9rabid · · Score: 1

    If I didn't know any better, it sounds like Apple might be gearing up to offer some sort of in-house virtualization, with this new filesystem laying the foundation for it.

  19. Re:NIH? by macs4all · · Score: 1

    Licensing. Apple did flirt with ZFS, but for some reason, and I would guess it was license issues, they decided not to go that route. Using btrfs would bring GPL/BSD licensing issues. So, Apple either had to license something like ReFS from MS, or roll their own.

    Exactly. And it WAS Licensing in the case of ZFS. They didn't want to have their Filesystem beholden to the likes of Oracle (and I for one, don't blame them a bit!).

  20. Will it finally have .. by ccr · · Score: 1

    .. case sensitive filenames by default? :D

    Just wondering. I know HFS+ can have case-sensitivity, but not sure if it is on by default. And some people seem to be discouraging that, based on quick googling.

    1. Re:Will it finally have .. by LynnwoodRooster · · Score: 1

      Case sensitive file systems are great! Change those lower-case "L"s to upper case "i"s and watch the hilarity ensue!

      --
      Browsing at +1 - no ACs, I ignore their posts. So refreshing!
    2. Re:Will it finally have .. by krisbrowne42 · · Score: 1

      Case sensitivity in OS X works just fine now, if you don't install any third-party software... And most software just works, especially if it's a Mac First program... But a lot of stuff that's developed cross-platform has weird inconsistent file referencing that "works just fine" in Windows and case-insensitive HFS+ but breaks once you start caring about case.

    3. Re:Will it finally have .. by LynnwoodRooster · · Score: 1

      No, I said the file name was Hilarity, not HiIarity...

      --
      Browsing at +1 - no ACs, I ignore their posts. So refreshing!
  21. Question not asked: Open source? by e432776 · · Score: 1

    Will non-Apple OSes be able to mount this new FS? Apple's track record is not great on this; its a shame to see the question not even addressed in the couple of mentions of AFPS I have seen.

    1. Re:Question not asked: Open source? by TeknoHog · · Score: 1

      How is it Apple's responsibility to get other, non-Apple, OSes to the point that they can mount a new file system? Isn't that the responsibility of the people developing those other OSes?

      Developing drivers is tough if you have no documentation.

      --
      Escher was the first MC and Giger invented the HR department.
    2. Re:Question not asked: Open source? by dgatwood · · Score: 1

      By that point, it will be too late to fix anything they did wrong, some of which might affect portability.

      --

      Check out my sci-fi/humor trilogy at PatriotsBooks.

  22. Great! Another cross-platform headache! by KeithH · · Score: 1

    HFS may be thirty years old but we still have major headaches transferring files between Macs and other machines. I truly believe that Apple would be better served if they invested in a open filesystem format.

  23. Re:Did they make their own from scratch? by LynnwoodRooster · · Score: 1

    Why would they do that? How else can they move to a "monthly subscription model" for your file system? You'll pay Apple some nominal $9.99 charge per month - can't do that if it's some easy-to-support file system. Gotta be proprietary so your files and data are nearly impossible to move over (the rest of the OS/dev languages will quickly follow with support for nanosecond file times - and will break if that granularity isn't there) and thus Apple achieves the ultimate lock-in. With monthly recurring revenue.

    --
    Browsing at +1 - no ACs, I ignore their posts. So refreshing!
  24. Re:It's "AT first glance", American cretins... by LynnwoodRooster · · Score: 1

    For starters, number 1 we're really logical thinkers and B, we value consistency.

    --
    Browsing at +1 - no ACs, I ignore their posts. So refreshing!
  25. TimesTwo and DiskDoubler by tepples · · Score: 1

    Long ago, there was a Stacker-like tool for classic Mac OS called TimesTwo that installed itself as a SCSI driver. There were also file-level tools called DiskDoubler, Now Compress, and StuffIt SpaceSaver that intercepted file open calls and decompressed files in the background. Files were written uncompressed, to be compressed later by the "AutoDoubler" background task.

  26. Re:Did they make their own from scratch? by UnknownSoldier · · Score: 1

    > but the continued major issues with ZFS on macOS, with Finder integration and more,

    You wouldn't happen to have more detailed information by chance please?

    > much to my chagrin.

    I too lament that fact that ZFS wasn't chosen. I guess this is the typical NIH here by Apple. :-/

  27. Re:Nanosecond granularity? by tepples · · Score: 2

    It means you can guarantee that each file has a unique 64-bit timestamp by simply assigning a sequential nanosecond timestamp if two files get written at once. It also gives an opportunity to work around UNIX's year 2038 problem (2^31 UTC seconds since 1970) and Apple's year 2040 problem (2^32 UTC seconds since 1904), pushing it out to at least 2262 (2^63 UTC nanoseconds since 1970).

  28. Treat disconnection like power loss by tepples · · Score: 1

    In theory, any journaled file system would tolerate surprise disconnection to the same extent it tolerates surprise power loss. The problem is that journaled file systems tend to be either proprietary or copylefted, hindering their wide adoption for removable media across all major desktop operating systems.

  29. Terabyte SSDs? by Dcnjoe60 · · Score: 1

    Really, terabyte SSDs? Today's SSDs, in terms of storage capabilities are more like mechanical drives of 20 years ago. Yes, data centers may have large SSDs, but not users. Will average users benefit from this new file system or will things like 64bit pointers on a drive less than a gigabyte simply consume more of the drive for little benefit?

    Finally, are not there already file systems available that meet whatever this new need of Apple's is that would not require the recreation of the wheel (or disk)? If the goal is secure Apple a spot in the enterprise, wouldn't a main stream file system like ZFS be more likely to achieve that goal?

    1. Re:Terabyte SSDs? by Anonymous Coward · · Score: 1

      Really, terabyte SSDs? Today's SSDs, in terms of storage capabilities are more like mechanical drives of 20 years ago.

      Um, what? 20 years ago, I bought a top-of-the-line Micropolis 2GB hard drive for the low low discount price of $500. Last year, I bought a 500GB SSD for $180. Today, you can get 1TB SSDs for about $200 (or probably $1,000 from Apple if they offered that option in the one laptop model they have that can take a standard drive, which they don't). Where are you even getting drives with less than 1GB of storage capacity? I haven't even used a flash drive that small in a decade.

    2. Re:Terabyte SSDs? by guruevi · · Score: 1

      Terabyte SSD's are cheap, you can get some for $250. Samsung recently released a 16TB SSD, 32-bit pointers with 4kb blocks has your size pegged at ~16TB, 64-bit "limits" your size to a few zettabytes (10^10 terabyte).

      I already have a file system with more objects than a 32-bit pointer can hold, a major issue when considering object storage like OpenStack because no object storage is yet built for holding billions of objects per container.

      --
      Custom electronics and digital signage for your business: www.evcircuits.com
    3. Re:Terabyte SSDs? by Dcnjoe60 · · Score: 1

      Terabyte SSD's are cheap, you can get some for $250. Samsung recently released a 16TB SSD, 32-bit pointers with 4kb blocks has your size pegged at ~16TB, 64-bit "limits" your size to a few zettabytes (10^10 terabyte).

      I already have a file system with more objects than a 32-bit pointer can hold, a major issue when considering object storage like OpenStack because no object storage is yet built for holding billions of objects per container.

      Is not OpenStack a server application? I see how this can be useful in such a scenario, although XFS or ZFS would seem to be more marketable with enterprise data centers. The majority of Apple hardware sales, however are not enterprise systems, but end user systems. Forcing a bunch of Macbooks and Mac Mini's to the new file system doesn't seem to be beneficial to anybody. Apple doesn't even sell user hardware approaching those limits.

    4. Re:Terabyte SSDs? by guruevi · · Score: 1

      OpenStack is supposed to be a one-thing-fits-all "datacenter" solution that scales both compute and storage nodes as you add hardware however it's implementation is piss-poor because the storage/compute is only intended for whatever fits on a 1 or 2U server and indexes for a container have to (largely/ideally) fit in memory. Once you need lots of storage for one (or few) "containers", the performance goes down the drain.

      --
      Custom electronics and digital signage for your business: www.evcircuits.com
  30. ZFS is not recommended for non-ECC RAM by perpenso · · Score: 5, Informative

    ZFS is not recommended for non-ECC RAM. RAM errors can get propagated to disk by application read operations, not just writes.
    http://research.cs.wisc.edu/ad...

    1. Re:ZFS is not recommended for non-ECC RAM by BitZtream · · Score: 1, Redundant

      Good job for pointing out something you don't understand like its an actual issue.

      HINT: The same applies to all machines without ECC ram, regardless of file system.

      Nothing you're saying there is unique to ZFS.

      By the same logic, NOTHING IS RECOMMENDED FOR NON-ECC RAM . . . "cause bitrot". Its not a ZFS problem, stop painting like it has anything at all to do with ZFS.

      With ZFS and its built in protection, thats just your next 'weak point' after you stop using shitty filesystems. On every other file system you don't care about non-ECC RAM bitrot corrupting data because your disks are far more likely to corrupt data without you being able to detect it.

      --
      Persistent Volume manager for Kubernetes - https://github.com/dwimsey/openshift-pvmanager
    2. Re:ZFS is not recommended for non-ECC RAM by perpenso · · Score: 1

      Nothing you're saying there is unique to ZFS.

      No, ZFS is more vulnerable. All filesystems can corrupt the disk by writing bad data, however ZFS can corrupt data on disk when an application only reads the disk. When checksums fail ZFS will assume the problem is on disk and attempt to "repair" the data on disk. This automatic repair is a great feature, when your RAM can be trusted.

      One example from the cited paper: "Dirtying blocks due to updating file access time increases the possibility of making corruptions permanent. By default, access time updates are enabled in ZFS; therefore, a read-only workload will update the access time of any file accessed. Consequently, when the structure containing the access time (znode) goes inactive (or when there is another workload that updates the znode), ZFS writes the block holding the znode to disk and updates and writes all its parental blocks. Therefore, any corruption to these blocks will become permanent after the flush caused by the access time update."

    3. Re:ZFS is not recommended for non-ECC RAM by Fweeky · · Score: 3, Insightful

      When checksums fail ZFS will assume the problem is on disk and attempt to "repair" the data on disk. This automatic repair is a great feature, when your RAM can be trusted.

      Repair by attempting to correct the data from a redundant location, if one exists, and if its checksum passes. The bit flips required to make such a process actually damage your data seems quite convoluted - it'd have to be multiple errors in different locations happening at just the right times - one in the read before the checksum is checked, one in the data to repair it after the checksum has been verified but before it's written back.

      "By default, access time updates are enabled in ZFS; therefore, a read-only workload will update the access time of any file accessed. Consequently, when the structure containing the access time (znode) goes inactive (or when there is another workload that updates the znode), ZFS writes the block holding the znode to disk and updates and writes all its parental blocks. Therefore, any corruption to these blocks will become permanent after the flush caused by the access time update"

      In-memory filesystem metadata can get damaged and end up in on-disk structures regardless of which one you use, and it's far from the only fs with atime updates. Is ZFS really significantly more vulnerable to this by comparison, or is it just that ZFS won't defend you against it?

      My quick skim of the paper suggests the latter. They don't seem to condemn ZFS for being worse, rather, they show it suffers the same sort of problems they find ext2 suffers from in face of memory errors, while demonstrating it's great at picking up errors from the disk/IO controller/etc.

    4. Re:ZFS is not recommended for non-ECC RAM by perpenso · · Score: 1

      The bit flips required to make such a process actually damage your data seems quite convoluted - it'd have to be multiple errors in different locations happening at just the right times ...

      For you it may be a low risk. For Apple its not. Apple will be shipping millions of machines. Plus given prior knowledge of ZFS' unique failure mode they will be vulnerable in court, a hostile class action lawyer arguing they increased their customer's vulnerability through their choice of filesystem and type of RAM.

      Is ZFS really significantly more vulnerable to this by comparison, or is it just that ZFS won't defend you against it?

      More vulnerable. The important distinction is that ZFS can corrupt on-disk data when applications are performing read operations. That is what differentiates ZFS from other filesystems.

      Stop approaching this from the perspective that ZFS is flawed. Rather approach this from the perspective that ZFS assumes memory can be trusted and should be used with system equipped with ECC RAM. Every piece of software has system requirements. ZFS just has an extra one. Given ZFS' capabilities it an excellent tradeoff, but its not a tradeoff available to consumer hardware.

      I'm going the BYO route for my SOHO server, as I have been doing for PCs for decades. Motherboard, CPU and RAM all supporting ECC. For those reading along you need all three, and strangely Intel is more likely to support ECC in lower end CPUs (ex i3) than in mid to higher end CPUS (ex i5, i7). Another difficulty for a consumer oriented company like Apple, making using ECC not really an option for them. ZFS is just not a good fit for Apple now that they no longer sell server grade equipment, hence their losing interest.

    5. Re:ZFS is not recommended for non-ECC RAM by Fweeky · · Score: 2

      For you it may be a low risk. For Apple its not. Apple will be shipping millions of machines.

      And these machines are already vulnerable just to single bit errors anywhere both in the IO path and in memory.

      The repair-of-death you describe involves multiple errors in the memory path occurring in a specific order and in relatively specific places, that are already dangerous to existing filesystems.

      The atime update metadata corruption you quote is similarly already a problem with existing filesystems. In fact it's more of a problem for these filesystems because they're overwriting existing metadata, not creating new copies of metadata that can be rolled back in a disaster as ZFS does.

      Even if we take it as true that ZFS is more vulnerable to these specific types of error (by no means demonstrated), that needs to be balanced against all the other errors it's less vulnerable against.

      Stop approaching this from the perspective that ZFS is flawed. Rather approach this from the perspective that ZFS assumes memory can be trusted

      ... so does every other filesystem. I'll quote another bit of that paper you like:

      "In addition to ZFS, we have applied the same fault injection framework used in Section 5 to a simpler filesystem,ext2. Our initial results indicate that ext2 is also vulnerable to memory corruptions. For example, corrupt data can be returned to the user or written to disk. When certain fields of a VFS inode are corrupted, operations on that inode fail or the whole system crashes. If the inode is dirty, the corrupted fields of the VFS inode are propagated to the inode in the page cache and are then written to disk, making the corruptions permanent. Moreover, if the superblock in the page cache is corrupted and flushed to disk, it might result in an unmountable filesystem"

      Intel is more likely to support ECC in lower end CPUs (ex i3) than in mid to higher end CPUS (ex i5, i7)

      i7-class Xeons (E3-XXXX) support ECC and are usually priced basically identically to their i7 cousins. i3's get used in tiny NAS systems like HP Microservers, probably why they come in ECC variants.

      Another difficulty for a consumer oriented company like Apple, making using ECC not really an option for them

      I'm sure Apple are more than capable of pushing for it if they considered it a priority. They have the purchasing power, they have the margins, they have the PR to make people wet themselves over the benefits if they so choose.

    6. Re:ZFS is not recommended for non-ECC RAM by perpenso · · Score: 1

      For you it may be a low risk. For Apple its not. Apple will be shipping millions of machines.

      And these machines are already vulnerable just to single bit errors anywhere both in the IO path and in memory. The repair-of-death you describe involves multiple errors ...

      And that is how airplanes occasionally crash. Its usually not one flaw or problem, its multiple problems/flaws occurring at the same time. If you are an individual wishing to fly this is of little concern, the odds are with you. If you are an aircraft manufacturer it is of concern since your aircraft will conduct millions of flights and there are hostile lawyers eyeing your deep pockets.

      Apple was in a similar situation, but with deeper pockets to attract class action lawyers.

      Stop approaching this from the perspective that ZFS is flawed. Rather approach this from the perspective that ZFS assumes memory can be trusted

      ... so does every other filesystem. I'll quote another bit of that paper you like:

      There is quite a difference between corrupting the inode info / timestamp info and corrupting the **contents of a file**, its user data. That is what is unique about ZFS. File data being **read** is at risk due to automatic repairs of **user data**.

      Intel is more likely to support ECC in lower end CPUs (ex i3) than in mid to higher end CPUS (ex i5, i7)

      i7-class Xeons (E3-XXXX) support ECC and are usually priced basically identically to their i7 cousins.

      Yes, server grade CPUs support server grade RAM. And judging from Intel's data sheets the current generation Xeons are slower (clock rate, more cores though) and generate more heat. Notice Apple's consumer products are designed for more moderate thermal conditions. And the 4-5 year old Xeons you mention seem to be slightly more expensive that the new i7s in Intel's price lists.

      Another difficulty for a consumer oriented company like Apple, making using ECC not really an option for them

      I'm sure Apple are more than capable of pushing for it if they considered it a priority. They have the purchasing power, they have the margins, they have the PR to make people wet themselves over the benefits if they so choose.

      Intel used to support ECC in some i5 and i7, if I'm reading the 6th gen data sheets correctly no i5 or i7 supports ECC. I severely doubt Apple can change Intel's direction. Plus, no, consumers won't care so why would Apple even bother? ZFS was interesting when they offered servers, they no longer do so, the interest is gone, its not their mission to advocate for ZFS.

    7. Re:ZFS is not recommended for non-ECC RAM by Fweeky · · Score: 1

      And that is how airplanes occasionally crash. Its usually not one flaw or problem, its multiple problems/flaws occurring at the same time

      Right, because they have safety systems that cover the typical cases. Apple lack those, so it's not just the convoluted multiple problems piling up that will take out their products, it's simple common ones as well.

      There is quite a difference between corrupting the inode info / timestamp info and corrupting the **contents of a file**, its user data. That is what is unique about ZFS. File data being **read** is at risk due to automatic repairs of **user data**.

      ZFS repairs using redundant copies of data which don't exist on single-disk configurations. All ZFS will do in such a situation is tell you there's an error in a file it can't correct and suggest you restore it from backup. If it's a transient memory or IO error causing the checksum to fail, a second attempt at reading it should work.

      Yes, server grade CPUs support server grade RAM. And judging from Intel's data sheets the current generation Xeons are slower (clock rate, more cores though) and generate more heat

      More cores?

      And the 4-5 year old Xeons you mention

      When did I mention 4-5 year old Xeons? Current prices here:

      i7 Skylake, £258-£290 for 2.4-4GHz.

      E3 Skylake, £162-£508 for 2.9-3.7GHz. If you forgo 4GHz the Xeons are actually cheaper.

    8. Re:ZFS is not recommended for non-ECC RAM by perpenso · · Score: 1

      More cores?

      Sorry, I was looking at E7 Xeons, 8-10 cores for the 4-5 year old contemporaries of the E3s. Up to 24 cores for the current E7s.

      When did I mention 4-5 year old Xeons?

      The E3 series, the most recent versions released in mid 2012. Use the link you provided and select View All E3. Notice the 2011-12 launch dates.

    9. Re:ZFS is not recommended for non-ECC RAM by Fweeky · · Score: 1

      The E3 series, the most recent versions released in mid 2012. Use the link you provided and select View All E3. Notice the 2011-12 launch dates.

      No, that's the first generation E3's. You'll note the page I actually linked you to shows E3 v5, the "View All" link takes you to the database which can only show one generation at a time and defaults to the oldest.

      v5 launch dates are Q4'15 through Q2'16.

    10. Re:ZFS is not recommended for non-ECC RAM by perpenso · · Score: 1

      View All shows 2011-2016 for E7, 2012-2016 for E5, but only 2011-2012 for E3. Apparently the E3 View All page is broken, apologies. The normal E3 landing page has an incomplete list of processors. It seems only the Compare Product Families page gives a complete list.

      I did a BYO PC recently with an i7 gen 6. The comparable E3 v5 seem to either run hotter when the price is comparable or better, or are much more expensive when the they run with the same thermal output. Both situations would seem troublesome for Apple.

    11. Re:ZFS is not recommended for non-ECC RAM by Blaskowicz · · Score: 1

      Strangely Intel supports ECC on the Skylake Celeron now.

    12. Re:ZFS is not recommended for non-ECC RAM by perpenso · · Score: 1

      Strangely Intel supports ECC on the Skylake Celeron now.

      Small and home office servers, appliances like NAS Raid boxes, etc. It would work great for a non-enterprise ZFS box.

  31. Re:2016? crypto-ransom protection !! by TheRaven64 · · Score: 1

    I back up my MacBook Pro to a FreeBSD box using ZFS with compression and deduplication (and snapshot it periodically, because if TimeMachine detects that your backups are corrupted then the only option is to delete them an redo from start, and it's nice to be able to revert just one backup if the last backup broke something). With lz4 compression, the compression ratio for the ZFS filesystem that I use as a backup target is 2.08x - that's a fairly hefty saving. It's harder to measure how much dedup is saving me, because it's a pool-wide property and I have ripped a load of my DVD collection, which probably doesn't contain many duplicate blocks. Currently the dedup ratio is 1.2x, but given that the TimeMachine volume is around 20% of the total space and contains a lot more redundancy than the rest, I wouldn't be surprised if I'm saving a relatively large amount there too.

    I probably get more benefit from dedup on the backup disk (TimeMachine copies entire files, even if only a single block has changed) than I would on the laptop, but I'd expect to see similar benefits from compression on the source and the backup, and that 2x compression ratio looks pretty good...

    --
    I am TheRaven on Soylent News
  32. Holy shazbot by JustAnotherOldGuy · · Score: 1

    "APFS supports nanosecond time stamp granularity rather than the 1-second time stamp granularity in HFS+.

    Damn, 1-nansecond time stamp granularity? A factor of one billion improvement in resolution, that's fairly impressive. I'm not sure it'll be of much use to a lot of people, but I'm all for greater precision/resolution in stuff like this.

    --
    Just cruising through this digital world at 33 1/3 rpm...
  33. Re:Did they make their own from scratch? by macs4all · · Score: 1

    > but the continued major issues with ZFS on macOS, with Finder integration and more,

    You wouldn't happen to have more detailed information by chance please?

    > much to my chagrin.

    I too lament that fact that ZFS wasn't chosen. I guess this is the typical NIH here by Apple. :-/

    Got nothin' to do with NIH. Apple uses LOTS of industry standards and Open Source projects that ALL fall under the "Not Invented Here" category.

    Dig down into the Forums on the OpenZFSOnOSX Site to see what issues people are still having these days with ZFS (OpenZFS) under OS X. Last I looked was early this year.

  34. Re:This has been my biggest gripe about OS X/macOS by NJRoadfan · · Score: 1

    I don't understand why innovations like those found in BeFS (like rich metadata support) go ignored whenever someone creates a new file system. If you are going to break compatibility, you might as well add in some useful features.

  35. Re:Nanosecond granularity? by TheRaven64 · · Score: 1

    Now? It means very little other than effectively guaranteeing a total ordering on files created on a single system. Remember, however, that filesystems typically stay in production for at least 20 years (35 for HFS+ is not that uncommon - UFS is even older) and so a little bit of headroom is always a good idea.

    --
    I am TheRaven on Soylent News
  36. CORRECTION by tepples · · Score: 1

    I was mistaken. I apologize. Thank you for clarifying. So let me correct myself:

    In order to understand Apple's intent in leaving transparent compression out of a file system, we'll have to watch for what Apple chooses to solder down in its next round of hardware.

  37. Re:APFS? Get fucked. by Spaham · · Score: 1

    It will be opensourced in 2017, when it's ready for the world and settled.

  38. Re:APFS? Get fucked. by drinkypoo · · Score: 1

    Actually, Apple already commited to opening up the volume format:

    so now we only have to worry about patent encumbrance? at least that shrinks the problem domain

    --
    "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
  39. Re:This has been my biggest gripe about OS X/macOS by Jeremi · · Score: 1

    I don't understand why innovations like those found in BeFS (like rich metadata support) go ignored whenever someone creates a new file system. If you are going to break compatibility, you might as well add in some useful features.

    That sad truth is that the utility provided by rich metadata support is more than counterbalanced by the headaches it causes whenever you need to copy your files anywhere outside of the filesystem that supports it. (Just ask any .sd2 audio format users about what happened to their audio files when they tried to copy their data to a FAT32-formatted USB key, or email them, or etc).

    Because of compatibility/interoperability issues, programs can't rely on putting important data into the resource forks, so the feature ends up going unused. Because the feature ends up going unused, people continue to use filesystems that don't support it. Because people continue to use filesystems that don't support it, app developers can't rely on it to work. And round and round we go, forever stuck in a bleak dystopia where the only supported "metadata" is a three-letter extension to the filename. :(

    --


    I don't care if it's 90,000 hectares. That lake was not my doing.
  40. Re:Nanosecond granularity? by Megane · · Score: 1

    I'm going to guess that this uses Apple's "double float" version of the Unix timestamp. Basically, if you're going to use a 64-bit integer to avoid the Y2038 problem, you'll end up with a lot of useless bits. If you convert the same numbers to 64-bit double float, those extra bits become nanosecond resolution (or probably better than your hardware can measure). If for some reason you want to deal with timestamps a few billion years in the past or future, then you can afford to deal with mere seconds-level accuracy. Beyond that, you may have to deal with accuracy of minutes or hours, but what's a few seconds compared to the life of the universe?

    --
    #naabhaprzrag, #sverubfr-000, #agi-fcbafberq, negvpyr[pynff*=' negvpyr-ary-'] { qvfcynl: abar !vzcbegnag; }
  41. Re:NIH? by MachineShedFred · · Score: 1

    More than that, ZFS was already under legal action from NetApp, so I have a feeling the licensing squabble wasn't just about money or support, but legal indemnity should Sun / Oracle lose that thing.

    --
    Slashdot still doesnâ(TM)t support Unicode after it was added to the HTML standard in 1997.
  42. Still no versioning? by NorthWay · · Score: 1

    Seems I will keep waiting for a FS that can do versioning.
    I wonder if it is more of an API hindrance than a technical one (as a snapshot already has much of what you need for it).

  43. Re:NIH? by nine-times · · Score: 1

    Also, it's worth noting that Apple will often "reinvent the wheel" when the existing wheels don't quite work they way they'd like. They don't have to maintain compatibility with other vendors or old concepts, which frees them to do what they like.

  44. Do we need ANOTHER file system? by AbRASiON · · Score: 1

    Why can't money or development time be put towards existing open solutions and fixing them up?

    I am using ZFS on my FreeNAS machine and from what I understand BTRFS has some features superior to ZFS (but also some stability issues)
    It's really super frustrating as a geek that there isn't a single "be all and end all" file system out there yet. Something definitively powerful, reliable, fast.

    I know there's been some improvements over the years to these file systems but damn if progress doesn't seem slow.
    Also Apple creating their own? How long until it's reliable? It takes forever to make a filesystem good.

  45. Re:File Sharing by dgatwood · · Score: 1

    FTP and SFTP are trivial user-space servers. Of course they'll work. OS X doesn't support AFS, AFAIK. I'm not surprised that Apple hasn't added NFS support yet; I hope they will, because there are many situations where SMB doesn't work very well.

    As for AFP, I'm not surprised that they haven't added support. AFP is really designed around HFS+. It performs poorly on other filesystems because of things like the searchfs system call not existing or being emulated by brute force. AFP was barely usable on UFS, and aliases didn't work. Supporting AFP would likely require a lot of extra engineering, whereas most of those behaviors (aliases, searching via Spotlight instead of filesystem metadata) are at least partially supported through emulation atop SMB already, so they'd get a lot of that functionality for free.

    --

    Check out my sci-fi/humor trilogy at PatriotsBooks.

  46. Higher end CPUs tend not to support ECC RAM by perpenso · · Score: 1

    So use ECC RAM. By an amazing coincidence, the company announcing this software also just happens to also manufacture hardware.

    ECC requires a compatible motherboard, CPU and RAM. Strangely higher end Intel CPUs, i5 and i7, tend not to support ECC.

  47. cut/paste by stealth_finger · · Score: 1

    Can you cut and paste files yet?

    --
    Wanna buy a shirt?
    https://www.redbubble.com/people/stealthfinger/shop?asc=u
    1. Re:cut/paste by Lotus456 · · Score: 1

      Yes, you have been able to for a long time.

      It's not obvious, though - you copy, and then hold down "option" when you right-click or ctrl-click in the destination folder, "paste"will change to "move."

      --
      "It's a good computer... for I to BM on!" - apologies to Triumph, the insult comic dog
    2. Re:cut/paste by stealth_finger · · Score: 1

      Lol that's apple for you. Being deliberately obtuse. Good to know though so cheers.

      --
      Wanna buy a shirt?
      https://www.redbubble.com/people/stealthfinger/shop?asc=u
  48. Re: Might "lose" more if ZFS spacemaps corrupted by Sits · · Score: 1

    The BSD Now show "ZFS in the trenches" talks about how different developers have different opinions on whether you must use ECC RAM with ZFS but all recommended ECC if possible (so that part is not in debate). Around the 56:30 mark of the episode, Josh Paetzel of FreeNAS explains that if the ZFS spacemaps were corrupted due to memory errors you could be in a worse situation compared to less sophisticated filesystems that have an fsck. This is because with a corrupt spacemap ZFS would refuse to let you access any data whereas the fsck would "just" (irreversibly) decopule or delete chunks of data in an attempt to allow access to the rest. It's not a great situation - inaccessible data versus data loss and/or corruption but it is a difference.

  49. ZFS & apple by illtud · · Score: 1

    Late to the party, but for those asking about ZFS & apple, Adam Leventha (dtrace Sun engineer)l posted an exceptionally informative post about the history of this mess earlier this week:

    http://dtrace.org/blogs/ahl/20...

  50. Re:NIH? by illtud · · Score: 1

    mlts, re ZFS, see my post at the end of this story.