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

HAMMER REDO log - update 11-Jan-2010


From: Matthew Dillon <dillon@xxxxxxxxxxxxxxxxxxxx>
Date: Mon, 11 Jan 2010 21:17:57 -0800 (PST)

    The REDO work is about half done.  The entire forward logging path
    is implemented and HAMMER will generate and sync REDO records.
    However, the recovery code does not yet parse the REDO records.
    The recovery side of the work is still ongoing.

    Some basic testing is possible but note that any crash recovery will
    not actually run the REDOs yet.  The filesystem meta-data should still
    be recovered properly, it just won't rerun the write()'s that were
    fsync()'d via the new REDO modes.

    Requirements for testing:

    * HAMMER filesystem must be version 4 or upgraded to version 4.

    * vfs.hammer.fsync_mode must be set to 2 or 3 (it defaults to 0).

	0	original non-REDO fsync mode.  Full meta-data flush
		to disk with a synchronous media flush command.

	1	original non-REDO fsync mode.  Full meta-data flush
		to disk with media flush command, but done asynchronously.

	2	fast-fsync mode REDO's generated and synced to disk,
		with a synchronous media flush.

	3	super-fast-fsync mode REDO's generated and synced to disk,
		with no media flush.

	4	fsync completely disabled

	Please only use filesystems you are willing to lose for now.
	I don't THINK I've made any mistakes but...

    * vfs.hammer.limit_redo defaults to 4194304 (4MB).  This specifies
      how much data can be written between fsync()s before HAMMER gives
      up trying to use the fast REDO mode.  You probably do not need
      to change this default.

    Since the recovery code hasn't been implemented yet the type of testing
    which can be done atm is, say, benchmark testing (like mysql benchmarks
    and such).

						-Matt




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