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
