Hacker News new | ask | show | jobs
by eternalban 3376 days ago
> - has it's own unique filesystem called Hammer (and work is being down on Hammer2 which is a complete rewrite)

You said "interesting", but superficially "a complete rewrite" WIP doesn't sound like a plus when choosing a production system OS.

If anyone is interested, this is what the DBSD man page says about hammer:

     HAMMER file systems are designed for large storage systems, up to 1
     Exabyte, and will not operate efficiently on small storage systems.  The
     minimum recommended file system size is 50GB.  HAMMER must reserve 512MB
     to 1GB of its storage for reblocking and UNDO/REDO FIFO.  In addition,
     HAMMER file systems operating normally, with full history retention and
     daily snapshots, do not immediately reclaim space when files are deleted.
     A regular system maintenance job runs once a day by periodic(8) to handle
     reclamation.

     HAMMER works best when the machine's normal workload would not otherwise
     fill the file system up in the course of 60 days of operation.  
And what appears to be the original design doc for Hammer by Dillon: https://www.dragonflybsd.org/hammer/hammer.pdf

[& p.s.] Hammer2: http://gitweb.dragonflybsd.org/dragonfly.git/blob/b93cc2e081...

2 comments

In all fairness to Dragonfly, Apple themselves just today released an entirely new file systems that was a complete rewrite as well.

With the advent of SSD and NVME, how you achieve maximum performance and ensure long term "disk" endurance has radically changed in recent years. You're no long write data to a physical platter anymore. Which radically changes huge fundamental assumptions in how legacy file systems were created 30-40 years ago.

So don't view a rewrite as a bad thing. It's Dragonfly being proactive and keeping up with the times.

> Apple themselves just today released an entirely new file systems that was a complete rewrite as well.

Without CRCs or checksums on the blocks. Grr...

"Silent data corruption is real" https://news.ycombinator.com/item?id=13851349

> Which radically changes huge fundamental assumptions in how legacy file systems were created 30-40 years ago.

Actually, it doesn't. It makes the ones that you haven't heard of interesting again. Consider the BSD 4.4 LFS, for example. The disc is written to as a circular log, with all writes going to the head of the log, which gradually works its way across the whole disc, and a cleanup mechanism emptying the tail of the log. That is global wear levelling in the file system ... in a design from 1990.

This is what you miss when you adopt the mindset that mis-uses the word "legacy" like that.

Only history proves stability.
Hammer1 is a log-structured snapshottable data filesystem with near-live master:slave replication, similar to e.g. zfs/btrfs, with very low memory requirements.

Hammer2 will, last I checked, enable multi-master clustered volumes plus replicated fanout mirrors and caching clients at the base system level (e.g. not an overlay application like other systems)

While there is a focus on keeping releases as stable as possible and the tip of the source tree stable, it is heavily under development so some amount of low-level expertise is probably a good idea.. which isn't to say you can't use it for day-to-day use.

Systems are used for different things - one being heavily under development doesn't necessarily mean it isn't suitable for some use cases