in Unix

Hammer Filesystem update, waiting for FreeBSD 7.0

Hammer filesystem updated, from Matt :

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.

Meanwhile FreeBSD 7.0 already reach ‘release’ in my testing box, next testing maybe freebsd 8.0 bleeding edge 🙂