More Hammer fixups

Tomohiro Kusumi has been creating a near-constant stream of bugfixes and cleanups to Hammer for quite some time. I don’t often link to it, because they are incremental improvements and hard to linkblog, so to speak. In an effort to make up for this deficit, I do want to draw attention to his two recent commits: “Make hammer commands print root volume path“, and “Print volume list after volume-add|del“.  Small changes, but this is what makes complex systems usable.

Hammer not show

The ‘hammer show’ command can be used to dump the B-Tree structure of a Hammer volume, and CRC errors can be spotted.  It’s rare that anyone would need it, but if you do, this dumped information will include file hierarchy information.

If that makes you a bit nervous to repost any of that information when talking about it in public, Tomohiro Kusumi has added an ‘obfuscate’ option to ‘hammer show’ that does just that – it hides path information from the debug output.

No atime in Hammer

Hammer now defaults to ‘noatime’, meaning the date and time of last access are not updated on every file action.  Note that creation and modification date and time are still recorded.  This will help with speed and disk activity.

This may cause a problem with any software expecting this to change – mutt, possibly?  We will find out.  This change was done after the 4.4 branch, so it’s not in the current release of DragonFly.

HAMMER2 root mounts and live dedup too

HAMMER2 recently gained the ability to be used as the root mount for your DragonFly system.  Live deduplication of data is also now possible, which means fast copy operations, less space used, and no need to wait for an overnight batch process to do it.  If you want to try it, you need a bleeding edge DragonFly system and the WANT_HAMMER2 option.  It’s still not ready for production use, so don’t try it with any data you want to keep.