On Wed, 2008-01-30 at 09:18 -0700, Lloyd Brown wrote:
> I could be wrong, but I think it has a lot in common with database 
> transaction support.  Namely, grouping operations together so that if 
> part of the operation fails, the whole set rolls back, so the file 
> system is in a consistent state.  Someone please correct me if I'm wrong.

One important distinction between DB transactions and FS journaling  is
that DB's use transaction to keep the data consistent, whereas most FS's
use journals to keep the metadata consistent. So if you system crashes,
a file's contents might be corrupted, but the FS itself won't be
corrupted. (Won't have inodes pointing at random data, unfreeable
blocks, etc.) Some FS's do allow you to also journal data transactions,
but doing so is generally slower so it isn't enabled by default.

It's rather dated, so I would trust it for anything more than an
explanation of the basics, but here's an article you might find useful:

http://www.ibm.com/developerworks/library/l-fs8.html

-- 
"English doesn't borrow from other languages. It follows them down dark
allies, knocks them over, and goes through their pockets for loose
grammar." -- Seen on IRC

--------------------
BYU Unix Users Group 
http://uug.byu.edu/ 

The opinions expressed in this message are the responsibility of their
author.  They are not endorsed by BYU, the BYU CS Department or BYU-UUG. 
___________________________________________________________________
List Info: http://uug.byu.edu/mailman/listinfo/uug-list

Reply via email to