logo
Published on KernelTrap (http://kerneltrap.org)

HAMMER Filesystem Working

By Jeremy
Created Jan 3 2008 - 17:58

"HAMMER is progressing well. The filesystem basically works, but there are some major pieces missing such as, oh, the recovery code, and I still have a ton of issues to work through... the poor fs blows up when it runs out of space, for example, due to the horrible spike implementation I have right now," DragonFlyBSD creator Matthew Dillon stated [1]. HAMMER is a new highly available clustering filesystem aimed to be of beta quality by the DragonFlyBSD 2.0 release later this month. Matt notes,

"It isn't stable yet but some major milestones have been achieved. I am able to cpdup, rm -rf, and perform historical queries on deleted data."

Matt went on to caution, "please note that HAMMER is *NOT* yet ready for wider testing. Please don't start reporting bugs yet, because there are still tons of things for me to work through."


From: Matthew Dillon <dillon@...>
Subject: HAMMER update - 12/31/2007
 [1]Date: Dec 31, 9:19 pm 2007

HAMMER is progressing well.  The filesystem basically works, but there
    are some major pieces missing such as, oh, the recovery code, and I
    still have a ton of issues to work through... the poor fs blows up
    when it runs out of space, for example, due to the horrible spike 
    implementation I have right now.

    It isn't stable yet but some major milestones have been achieved.  I am
    able to cpdup, rm -rf, and perform historical queries on deleted data.

    Here is a quick example:
    
# newfs_hammer -L TEST -S /var/vkernel/hammerimg.01 /var/vkernel/hammerimg.02
... start up vkernel ...
# mount_hammer /dev/vkd2 /dev/vkd3 /mnt
# cpdup / /mnt/copy
# sync
# hammer now
0x47799042
# rm -rf /mnt/copy
...
# cd /mnt/copy@@0x47799042
[access originally cpdup'd data, even though you deleted it all]

    Please note that HAMMER is *NOT* yet ready for wider testing.  Please
    don't start reporting bugs yet, because there are still tons of things
    for me to work through.

						-Matt

From: Johannes Hofmann <Johannes.Hofmann@...> Subject: Re: HAMMER update - 12/31/2007 [1]Date: Jan 1, 4:29 pm 2008 Matthew Dillon <dillon@apollo.backplane.com> wrote: > HAMMER is progressing well. The filesystem basically works, but there > are some major pieces missing such as, oh, the recovery code, and I > still have a ton of issues to work through... the poor fs blows up > when it runs out of space, for example, due to the horrible spike > implementation I have right now. > > It isn't stable yet but some major milestones have been achieved. I am > able to cpdup, rm -rf, and perform historical queries on deleted data. > > Here is a quick example: > > # newfs_hammer -L TEST -S /var/vkernel/hammerimg.01 /var/vkernel/hammerimg.02 > ... start up vkernel ... > # mount_hammer /dev/vkd2 /dev/vkd3 /mnt > # cpdup / /mnt/copy > # sync > # hammer now > 0x47799042 > # rm -rf /mnt/copy > ... > # cd /mnt/copy@@0x47799042 > [access originally cpdup'd data, even though you deleted it all] > > Please note that HAMMER is *NOT* yet ready for wider testing. Please > don't start reporting bugs yet, because there are still tons of things > for me to work through. Just had to try it myself. This is way cool! Works as advertised - including the occasional crashes :-) Johannes
From: Matthew Dillon <dillon@...> Subject: Re: HAMMER update - 12/31/2007 [1]Date: Jan 1, 6:35 pm 2008 :Just had to try it myself. This is way cool! Works as advertised - including :the occasional crashes :-) : :Johannes Heh. Yah, I got too fancy trying to use the buffer cache and I'll probably have to rewrite that bit completely. It also deadlocks fairly easily and the kernel sometimes cleans out a buffer without telling HAMMER. It's going to stay that way for a few days at least, I need to work on the userland utilities, the spike code, and the on-the-fly recovery code before I can revisit the buffer cache implementation. -Matt Matthew Dillon <dillon@backplane.com>


Related links:


Source URL:
http://kerneltrap.org/DragonFlyBSD/HAMMER_Filesystem_Working