HAMMER 44/Many: Stabilization pass, user-guaranteed transaction ids
authorMatthew Dillon <dillon@dragonflybsd.org>
Tue, 13 May 2008 20:46:55 +0000 (20:46 +0000)
committerMatthew Dillon <dillon@dragonflybsd.org>
Tue, 13 May 2008 20:46:55 +0000 (20:46 +0000)
commitf36a973718724e1517b98ee83cfcba4ec78cbe0f
tree2879b2c495ae77bb247bf53e0275de042c462291
parent001c57c7d1a20bc0371584272605e1c036153673
HAMMER 44/Many: Stabilization pass, user-guaranteed transaction ids

* B-Tree changes:  Allow leaves to be empty.  Do not leave internal nodes
  with subtree_offsets of 0 when deleting a B-Tree element.  Do not try to
  clean up internal nodes with subtree_offsets of 0 while scanning the B-Tree.

  The pruner will be made responsible for such cleanups.  This way the
  front-end does not modify the B-Tree at all.

* Add a new ioctl to support the hammer utility 'synctid' command.
sys/vfs/hammer/hammer.h
sys/vfs/hammer/hammer_btree.c
sys/vfs/hammer/hammer_btree.h
sys/vfs/hammer/hammer_cursor.c
sys/vfs/hammer/hammer_flusher.c
sys/vfs/hammer/hammer_inode.c
sys/vfs/hammer/hammer_ioctl.c
sys/vfs/hammer/hammer_ioctl.h
sys/vfs/hammer/hammer_ondisk.c