Slashdot Mirror


Mac OS X to Get Journaling FS

overunderunderdone writes "According to eWeek, Apple Computer is planning to introduce a new journaling file system code-named 'Elvis' with the 10.2.2 release. Supposedly it will run on top of HFS+ and will be turned off by default. Though it will cost you 10% to 15% performance penalty the article says it is more extensive than NTFS and is on par with BeOS's 64-bit journaling file system. Not surprising since it is being developed by the same person - Dominic Giampaolo." I've been super impressed by OS X having used it as my primary laptop for the last couple weeks. It really is a great unix box- and this is one of the important missing puzzle pieces.

18 of 628 comments (clear)

  1. Re:a bit offtopic, but by jbarket · · Score: 5, Informative

    I made the switch over last December. Love it. I was really more of a FreeBSD user, but you get the idea. It's wonderful to be able to have an attractive GUI with all too many bells and whistles to work with, but still be able to throw up a terminal window with bash and work with the real heart of things if you feel the need. Plus the ability to run XFree86 rootless on top of the GUI is nice.

    --

    -----
    jonathan barket
  2. Thisis 100% PURE rumor by gsfprez · · Score: 5, Informative

    i wish it would have been explained that way...

    the writer of the eWeek article is Nick De Plumme (or something) - he's the guy from ThinkSecret....

    hardly a "journalistic" website.

    --
    guns kill people like spoons make Rosie O'Donnell fat.
    1. Re:Thisis 100% PURE rumor by jamesoutlaw · · Score: 5, Informative


      Remember a few months ago when several web publishers lost their Press Credentials to MacWorld for publishing Rumors? "Nick dePlume" was one of them. Matthew Rothenburg wrote an editorial entitled "Let My People Go" (or something like that) saying that these so-called "rumor" sites should be allowed the same privileges as the "real" press. Since then he's been co-writing articles every now and then with dePlume (that's a pen name, who knows that the guy's real name). I think that it's to try and lend some credibility to Think Secret and dePlume.

      Of course, this is pure speculation and all. who knows. haha

      Regardless of the truth, Rothenburg's "association" with Think Secret has basically caused me to lose respect for him.

    2. Re:Thisis 100% PURE rumor by MatthewRothenberg · · Score: 5, Informative

      We made it very clear that we're working from sources, and that the release of this information has not been sanctioned.

      Of course, I stand behind it completely, and I recommend that you check out our track record for accuracy when reporting unannounced Mac news on eWEEK: The end of Mac OS 9 booting and the rise of IBM's 64-bit PowerPC are just two recent examples of stories we nailed to the wall in advance of the official PR.

      It's not my place to speak for Think Secret, but Mac stories we put on eWEEK adhere strictly to a three-source rule (and always make a point of offering Apple an opportunity to respond, not that the company often avails itself of the chance). While we'd never burn a source, we make it absolutely clear what's official writ and what's unreleased insider information. This falls into the latter camp, but that doesn't detract a bit from its authenticity.

      Check back with me in a month, gsfprez, and we can talk about whether or not this story has legs. :-)

      Matthew Rothenberg
      Online editor
      Ziff Davis Media

  3. Re:10-15% by toupsie · · Score: 5, Informative
    Ok, so being I'm not the highest on there terminology totem pole, can somebody expain to me why journaling matters to me, and why its worth 10-15% of my system resources?

    So you can have fun yanking out the power plug of your computer while its doing a write operation without the unpleasant experience on reboot. Most people (as in AOL Grandmas) don't need it but for servers, its a must. This will help beef up Mac OS X Server against Linux.

    --
    Strange women lying in ponds distributing swords is no basis for a system of government.
  4. Re:10 - 15% ?! by Lewisham · · Score: 5, Informative

    OS X doesn't really need a fast G4, any G4 is good as long as you have a shedload of RAM. That's the real OS X bottleneck, which is easily solved by a quick trip to Crucial.com.

  5. Re:10-15% by aburnsio.com · · Score: 5, Informative

    Journaling your filesystem allows you to maintain integrity through a system crash or power outage. This doesn't mean you'll have all the data in your files uncorrupted (a point often missed by many), but rather that your filesystem won't become corrupted (you won't lose your filesystem because of a crash). Modern filesystems like the more recent Linux etxfs and XFS and Windows NTFS support journaling. It's an essential part of keeping your computer crash-resistant.

    There is a cost, however. Journaling filesystems are slower than non-journaling because all file metadata update operations have to be written to a transaction log. This makes journaling a poor choice for some high-volume filesystems in scientific computing or other arenas where performance is uttermost (games). In most cases, however, the performance penalty is worth the added integrity.

    Note that journaling your filesystem only keeps the metadata intact, not the file data itself. You can still loose data, such as the contents of a document you were editing but had not saved. For full transactional integrity you need the cost and overhead of a transactional database (SQLServer, Postgres, DB2, Oracle, etc.).

  6. Re:10-15% by rgmoore · · Score: 5, Informative

    Journaling means that if your system isn't shut down cleanly, it won't take forever to fsck your disk the next time you start up. The journal will contain all the information the system needs to get the system into a consistent state after an unclean shutdown. In addition, if the system journals all data instead of just metadata (as most journaling systems seem to do) it will prevent data loss, too.

    Also bear in mind that it won't cost you 10-15% of your system resources; it will slow down disk operations by 10-15%, which is a much smaller penalty. If you aren't doing really disk intensive stuff, you probably won't even notice the slowdown. If you are doing lots of disk intensive activities, you'll probably like the fact that you're less likely to be hosed if your system crashes in the middle of one.

    --

    There's no point in questioning authority if you aren't going to listen to the answers.

  7. Re:Existing Journaling Systems? by StressedCoder · · Score: 5, Informative

    This seems like an entirely new system, because the BSD type systems do not have journaling, and there is no such system on the forseable horizon.

    FreeBSD provides something called softupdates, which do much to alievate the need for a journaling system. And it does this without the performance hit. When FreeBSD 5.0 comes out it will do something called snapshoting, which will bring even more stability (and background fsck) without much of a performance hit. NetBSD provides (I think) a different implementation of softupdates. OpenBSD might too, I don't know.

    Which makes me very disappointed that apple chose this route. Softupdates+Snapshots solves the problem without the performance hit. BSD doesn't need no stinking journaling.

    --
    Jason Denton Colorado State University [Thoughs and comments are my own, and not reflective of CSU]
  8. Re:10-15% by TheMatt · · Score: 5, Informative

    If you have ever had a Linux system running a non-journaling filesystem, you'd know. I had a box using ext2, a non-journaling fs, go down in a power failure. This baby had about 100 GB of space in ext2. It took at least an hour to get the system up because if a box crashes without journaling, it must check the drives for consistency.

    In comparison, that same box using ext3, a journaling filesystem, takes a second or two to recover since it is not dependant on the size of the drives, but the (small) size of the journal (except if your drive hardware fails).

    Also, journaling helps with data integrity in cases of failure as well, so you don't get files filled with garbage at the end.

    If they are using anything close to BeOS's filesystem, use it. That was by far the best filesystem I have ever seen. Beautiful.

    --

    Fortran programmer...oh yeah. Array math for life!

  9. Re:Just another reason... by edremy · · Score: 5, Informative
    Got a call from one of the help desk people yesterday: he was confused about a Disk First Aid message on a Mac here.

    Yep, you guessed it... B-tree was basically spaghetti: reformat and reinstall time. I've seen it happen a few times before: the most spectacular being a crash during a defrag. Basically, nothing pointed to the right file: all the icons were there, but the info in them was basically noise.

    --
    "Seven Deadly Sins? I thought it was a to-do list!"
  10. Re:10-15% by mickwd · · Score: 5, Informative

    "Note that journaling your filesystem only keeps the metadata intact, not the file data itself".

    That depends on which journaling filesystem you use, and, sometimes, which mode you use it in.

    For example, the Linux ext3 file system supports three different journaling modes: "journal", "ordered" and "writeback".

    From the "mount" man page:

    journal All data is committed into the journal prior to being
    written into the main file system.

    ordered This is the default mode. All data is forced directly
    out to the main file system prior to its metadata being
    committed to the journal.

    writeback Data ordering is not preserved - data may be written into
    the main file system after its metadata has been commit-
    ted to the journal. This is rumoured to be the highest-
    throughput option. It guarantees internal file system
    integrity, however it can allow old data to appear in
    files after a crash and journal recovery.

    "You can still loose data, such as the contents of a document you were editing but had not saved".

    Well unless you've got some special sort of memory, you're going to lose everything you (or the application) haven't saved, whatever type of file system you use.

  11. Re:Existing Journaling Systems? by jazman_777 · · Score: 5, Informative

    OpenBSD uses softupdates (still in development, need an fsck still). Right here. The linked papers are useful reads.

    --
    Slashdot: Failed Car Analogies. Amateur Lawyering. Anecdote Battles.
  12. Re:10-15% by ahknight · · Score: 5, Informative

    There is no penalty for games. Games only read. The performance hit is for mass file creation and renaming and so on.

  13. Re:10-15% by Doktor+Memory · · Score: 5, Informative
    Journaling filesystems are slower than non-journaling because all file metadata update operations have to be written to a transaction log.
    That isn't necessarily true. At least, not always. In a RAID environment, filesystem logging can actually result in a net performance increase, because queuing up your writes in cache ram while waiting for the journal to commit increases the likelihood that the physical write operation will get spread sequentially over all of the drive heads. See Adrian Cockroft's book for more details.
    --

    News for Nerds. Stuff that Matters? Like hell.

  14. Re:a bit offtopic, but by xtremex · · Score: 5, Informative

    MOST Linux distros have a couple of Journaling file systems. ext3 being the most common. JFS (from IBM) and XFS (From SGI aka IRIX) are others. I use JFS on my home partition and ext3 everywhere else with naru a performance hit....actually, ext3 has been out for almost 1 years and a half with Kernel 2.4.10

    --
    If you're not a Liberal in your 20's, then you have no heart.If you're still a Liberal in your 30's you have no brain.
  15. Umm... no. by tgd · · Score: 5, Informative

    Unless Apple is caching its graphics to disc before displaying them, it wouldn't make a different in your "eye-candy processing power".

    Thats a 15% hit in disk performance, not system performance.

  16. How it works... by emil · · Score: 5, Informative

    Imagine that you have a library, and a librarian is filing away new books. When she is done filing them, she puts entries into the card catalog downstairs for the new books. The card catalog represents a filesystem's metadata.

    Now imagine that the librarian falls out of a 2nd story window into a dumpster and is carted away before she finishes filing the books and updating the catalog. You have no idea what books were filed; you have to perform an exhaustive search of the library to ensure that the card catalog is correct, which takes a long time. This was fsck before journaling.

    Servers with large amounts of disk space cannot afford extensive fsck times after a crash. It can take hours.

    Now imagine that the librarian keeps a small notepad of the books that she is filing, and when she meets her sticky end, the new librarian can read the notepad, check and verify the new entries, then update the card catalog to a consistent state. We assume that the notepad is updated before the book is filed, so if we have an incomplete notepad entry, the librarian died and the entry can be disregarded. The notepad corresponds to the journal in a journaling file system.

    It takes time to write a journal, so journaling filesystems will always be at least a little slower than non-journaling equivalents, design improvements aside.

    Most journaling filesystems will only guard the card catalog (metadata). Some, such as VxFS and ext3, can also be made to journal the books (data), but performance goes down because so much more goes through the log.

    Another feature to look for in journaling filesystems is dynamic inode creation. ext3 does not have this feature - you can only have so many card catalog entries, and when you exceed them, you can't add any more new books. XFS, for example, can create new inodes on the fly as long as you have disk space.

    For Sun people, it is always a surprise to find that Sun's UFS does journaling (you don't have to buy Veritas VxFS), but you have to turn it on with an option in /etc/vfstab.