Hello Cameron, I've replied in-line

On Fri, Mar 31, 2023 at 10:22:49AM +1100, Cameron Simpson wrote:

"memory based" might just mean memory mapped - kytotocabinet still has
persistent storage. Using a tmpfs will mean (a) it uses your physical
RAM (or possibly swap?) even when you're not using mutt and (b) the db
will vanosh on reboot.

I've used kyotocabinet elsewhere but do not know much, if anything,
about its internals.

Are you asking about picking a db backend (eg kyoto versus dbm)?

yes. I have several choices when building mutt:

HCACHE_BDB     : off
HCACHE_GDBM    : off
HCACHE_KYOTOCABINET: off
HCACHE_LMDB    : on
HCACHE_NONE    : off
HCACHE_QDBM    : off
HCACHE_TOKYOCABINET: off

The question is really about "is it worth putting kyotocabinet in there
when ~/tmp is already a tmpfs and it uses (mostly? mainly?) ram

Subjectively, I'd have thought for moderate data they'd be similar on a
tmpfs. If you're prepared to rebuild the whole hcache after a reboot
(which of course might be very infrequent for you) it still may not
matter.

Yes. The machine is on 24/7 apart from OS upgrades and similar

Can you qualify what your concerns are here?

It's just interest. I want as fast as possible and it's not an issue if
headers have to be re-fetched after a boot because the connection is
also fast. I use imap with my ISP. I frequently press '$' to resync
last-read pointers with the imap server. Maybe I can tell mutt to do
that automatically every 5 mins. my concern is only that if/when headers
have to be re-fetched that already-read email doesn't have the unread
flag set subsequently.

I use an hcache. On persistent storage, which is an SSD for me. My
"python" folder has 157000 messages in it and opening mutt on it and
then closing it just took about 20 seconds including eyeballing the top
line to read the message count. This mutt was built with tokyocabinet,
which I expect is used for the hache (nothing else would have any use
for it).

I'd recomment lmdb in your context if you need persistent storage. Have been v impressed with lmdb. I also have thousands of emails spread across different folders. My context is using a rpi4b (8GB) with
usb3-connected hard drive. Right now, with $tmpdir pointing to a tmpfs
mount, and with hcache still pointing to the HD, (and with a zfs
filesystem), mutt is veru useable and quick even on this limited
hardware.
--

Reply via email to