Sujet : Re: Switching INN 2 storage format
De : tanguy (at) *nospam* ortolo.eu (Tanguy Ortolo)
Groupes : news.software.nntpDate : 13. Feb 2025, 16:14:04
Autres entêtes
Message-ID : <vol27s$45bg$1@herbert.ortolo.eu>
References : 1
User-Agent : tin/2.6.2-20221225 ("Pittyvaich") (Linux/6.12.9+bpo-amd64 (x86_64))
Actually, while digging into INN 2 storage formats, I am more and more
considering switching to tradspool. The idea is that I prefer something
simple, easy to explain and understand, than something more complex.
Indeed, timecaf, as documented in
<
https://github.com/InterNetNews/inn/blob/main/storage/timecaf/README.CAF>,
really looks like some kind of filesystem. And I am a bit disturbed by
the idea of stacking such a filesystem on top of my actual filesystem,
because storing files, even if they are small and there are many of
them, seems like a good job for a regular filesystem.
(By comparison, CNFS is rightly described as a specialized filesystem.)
timehash relies more on the actual filesystem, with articles as
individual files, sorted in directories depending on their reception
date and time. Compared to timecaf and CNFS, it is supposed to be slower
because manipulating small files is slower than updating larger ones.
As for tradspool, with articles as individual files in directories that
replicate the newgroup hierarchy, it is supposed to by very slow with
large groups it means manipulating files in directories with many files.
And the expiration process is supposed to be slow as well, though I am
not sure why it would be so.
What I am now wondering, is how true the assumptions of slowness are
with a modern filesystem such as btrfs. I just made a test, creating a
million of small files (between 500 and 3000 bytes each) with random
content. Listing is slow, but existence checking, file creation and
deletion are not.