DragonFly kernel List (threaded) for 2010-01
HAMMER REDO log will go in this week.
HAMMER REDO log support will be going in this week. I do not expect
there to be any destabilization as the changes are quite straightforward.
Support for it was added late last year and now I'm actually implementing
the record laydown and parsing for it.
The REDO log will improve fsync() operations, typically styled
to support write()+fsync() operations by reducing the disk flush to
a single physical write to disk and a single disk synchronization
It should be noted that full fsync semantics on a single 5600 rpm
hard drive is theoretically limited to around ~90 transactions per
second. That is how long it takes to write ONE sector to media since
a full disk rotation is needed. Ignoring various tricks for the
moment for sector-addressable rotating media such as staggering the
logical data on the physical media, this places a severe performance
limitation on fsync() no matter how little data we wind up writing
to the drive.
A sysctl (defaulting to off) will be made available to relax the disk
flush requirements for write()+fsync() operations. Unlike other
filesystems relaxing the requirement will not make HAMMER more
fragile in any way, it will simply mean that a power loss event
will not guarantee that that particular write() data will have made it.
The meta-data will still be fully coherent and meta-data operations
will still use full disk flush semantics to guarantee ordering.