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

HAMMER update 24-Apr-2008


From: Matthew Dillon <dillon@xxxxxxxxxxxxxxxxxxxx>
Date: Thu, 24 Apr 2008 14:57:21 -0700 (PDT)

    HAMMER is going to be a little unstable as I commit the crash
    recovery code.  I'm about half way through it.  Meta-data updates
    to the disk media have now been separated out.  I have a few things
    left to do before crash recovery will actually work:

    * I have to flush the undo buffers out before the meta-data buffers
    * Then I have to flush the volume header so mount can see the updated
      undo info.
    * Then I have to flush out the meta-data buffers that the UNDO
      info refers to.
    * And, finally, the mount code must scan the UNDO buffers and perform
      any required UNDOs.

    The idea being that if a crash occurs at any point in the above
    sequence, HAMMER will be able to run the UNDOs to undo any partially
    written meta-data.  HAMMER would be able to do this at mount-time and
    it would probably take less then a second, so basically this gives us
    our instant crash-recovery feature.

    One interesting outcome of the separation work I just committed is
    that the frontend VOPs are *massively* disconnected from backend disk
    I/O now.  In coming weeks I hope to take advantage of this separation
    to remove the remaining stalls and significantly improve HAMMER's
    performance.

						-Matt




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