user/dev discussion of public-inbox itself
 help / color / mirror / Atom feed
From: Eric Wong <>
Subject: what storage system(s) are you using?
Date: Wed, 5 Aug 2020 03:11:27 +0000
Message-ID: <20200805031127.GA11917@dcvr> (raw)

I've been mostly using ext4 on SSDs since I started public-inbox
and it works well.

1.6.0 will have some changes to make things less slow on
rotational HDDs (and even faster on SSD).  It's still slow, just
a bit less slow than before.  Testing things on giant inboxes is
like watching grass grow.  Small inboxes that can fit into the
page cache aren't too bad...

I'm also evaluating btrfs since its raid1 is handy when I've got
a bunch of old mismatched HDDs for backups.  btrfs may become
the default FS for Fedora (and maybe other distros will follow),
so I anticipate we'll see more btrfs adoption as time goes on.

Out-of-the-box, btrfs is not remotely suited for random write
patterns from Xapian and SQLite.  However it gives some extra
piece-of-mind with checksumming and compresssion of git refs.
Since we don't care much about data integrity of Xapian or
SQLite data, 1.6.0 will set the nodatacow attribute on those

With the default CoW, even a TRIM-ed SSD was abysmal at indexing

The space_cache=v2 mount option seems to help significantly with
large, multi-TB FSes (still testing...).  This will be noted in a
public-inbox-tuning(7) manpage...

I haven't done much with XFS outside of a VM.  Since it doesn't
have CoW, I expect it to be similar to ext4 as far as this
codebase is concerned.  From what I recall years ago, unlink(2)
was slow on XFS with Maildirs, and it's also the case currently
with btrfs...

Another interesting bit: SQLite uses some F2FS-only APIs.  So
F2FS could be good for SSD users; but I've yet to try it...

I also don't know if network filesystems (Ceph, Gluster, NFS,
Lustre, AFS, ...) work at all.  Maybe they're fine for git
storage, but probably not with SQLite, Xapian or flock(2).

             reply	other threads:[~2020-08-05  3:11 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-08-05  3:11 Eric Wong [this message]
2020-08-06 17:32 ` Konstantin Ryabitsev
2020-08-21 18:51   ` Eric Wong

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:

  List information:

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20200805031127.GA11917@dcvr \ \ \

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

user/dev discussion of public-inbox itself

This inbox may be cloned and mirrored by anyone:

	git clone --mirror
	git clone --mirror http://czquwvybam4bgbro.onion/meta
	git clone --mirror http://hjrcffqmbrq6wope.onion/meta
	git clone --mirror http://ou63pmih66umazou.onion/meta

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V1 meta meta/ \
	public-inbox-index meta

Example config snippet for mirrors.
Newsgroups are available over NNTP:
 note: .onion URLs require Tor:

code repositories for the project(s) associated with this inbox:

AGPL code for this site: git clone