User: Password:
Subscribe / Log in / New account

Soft updates, hard problems

Soft updates, hard problems

Posted Jul 4, 2009 0:20 UTC (Sat) by njs (guest, #40338)
In reply to: Soft updates, hard problems by jzbiciak
Parent article: Soft updates, hard problems

Huh, and what's *really* cool about it is that they apparently export a userspace API for expressing IO write barriers. So with the featherstitch patch, you really can say things like "write these bytes to that file, and then rename it, but don't let the rename hit the disk until after the write has completed", except with arbitrarily complex dependency structures (!).

I don't really care whether I'm using soft-updates or journalling, just so long as my disk is safe and things are reasonably fast, but real write barriers could totally change the performance profile of higher level apps. (Except for ACID databases, of course; I guess that's why historically no-one has cared about write barriers, because the only important high-level storage service was ACID databases.)

(Log in to post comments)

Soft updates, hard problems

Posted Jul 4, 2009 0:41 UTC (Sat) by njs (guest, #40338) [Link]

They got a bunch of the important stuff right, too... the "patchgroup" handles are basically fd's, they correctly prevent circular dependencies, they do the Right Thing for all different modes of fs operation (soft-updates: barriers use soft-update magic, full journaling: barriers optimize out, metadata journaling: barriers magically upgrade only those operations with dependencies to use full journaling), and check out this example from the paper:

> The following command line would ensure that 'in' is not removed until all changes in the preceding sort have committed to disk: $ depend 'sort < in > out' 'rm in'

(Of course, really you want shell support, so you can just say 'sort <in >out &&! rm in' or whatever.)

Aw, man, now I'm all excited about a research project from 2007 that will never go anywhere in real life :-(.

Soft updates, hard problems

Posted Jul 4, 2009 12:06 UTC (Sat) by nix (subscriber, #2304) [Link]

Seconded. This looks really nice...

Copyright © 2017, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds