DragonFly BSD
DragonFly kernel List (threaded) for 2010-01
[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]

HAMMER REDO log will go in this week.


From: Matthew Dillon <dillon@xxxxxxxxxxxxxxxxxxxx>
Date: Sat, 9 Jan 2010 14:12:30 -0800 (PST)

    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
    command.

    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.

					-Matt
					Matthew Dillon 
					<dillon@backplane.com>



[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]