HAMMER update 23-Feb-2008

Matthew Dillon dillon at apollo.backplane.com
Sat Feb 23 14:08:00 PST 2008


    HAMMER continues to progress well.  The blockmap is in good shape
    and I am moving on to the next item on the list.  All major functions
    work and appear to be stable. 

    Three items are needed for an 'alpha' release:

    * garbage collection code.  This will be responsible for re-optimizing
      the filesystem by scanning the B-Tree and copying data out of partially
      free big-blocks, allowing those blocks to be freed.

    * undo fifo ('instant' recovery after a crash).  This will handle
      all normal crash recovery cases.

      Because data is not overwritten the undo fifo only needs to record
      meta-data changes such as B-Tree operations, volume header updates,
      blockmap updates, and so forth.  Some minor buffer order will also
      be needed to flush the undo data before flushing the actual change,
      but its a lot easier then ordering requirements for the original
      design.

    * hard-core recovery code.  This will scan the whole filesystem and
      guarantee that everything is in a sane state.  Even if it is never
      supposed to be needed you can't release a filesystem without a
      utility which does this.

    I am not quite calling for testing yet, but please feel free to play
    around with it with the provisio that there is no crash recovery or
    garbage collection code in-place yet.

						-Matt






More information about the Kernel mailing list