Rocksolid Light

Welcome to RetroBBS

mail  files  register  newsreader  groups  login

Message-ID:  

Not only Guinness - Linux is good for you, too. -- Banzai on IRC


computers / news.software.nntp / github.com/go-while/nntp-overview

SubjectAuthor
* github.com/go-while/nntp-overviewgo-while
+- Re: github.com/go-while/nntp-overviewrek2 hispagatos
`* XFS / ZFS TEST DATASET notes Re: github.com/go-while/nntp-overviewgo-while
 `* Re: XFS / ZFS TEST DATASET notes Re:go-while
  `* Re: XFS / ZFS TEST DATASET notes Re: github.com/go-while/nntp-overviewJesse Rehmer
   `* Re: XFS / ZFS TEST DATASET notes Re: github.com/go-while/nntp-overviewGarrett Wollman
    `* Re: XFS / ZFS TEST DATASET notes Re: github.com/go-while/nntp-overviewJesse Rehmer
     `* Re: XFS / ZFS TEST DATASET notes Re: github.com/go-while/nntp-overviewAndre
      `- Re: XFS / ZFS TEST DATASET notes Re:go-while

1
github.com/go-while/nntp-overview

<6SGrM.427956$hTH1.411991@fx14.ams4>

  copy mid

https://www.rocksolidbbs.com/computers/article-flat.php?id=1889&group=news.software.nntp#1889

  copy link   Newsgroups: news.software.nntp
Path: i2pn2.org!i2pn.org!usenet.goja.nl.eu.org!2.eu.feeder.erje.net!feeder.erje.net!feeder1.feed.usenet.farm!feed.usenet.farm!peer02.ams4!peer.am4.highwinds-media.com!news.highwinds-media.com!fx14.ams4.POSTED!not-for-mail
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
Thunderbird/102.13.0
Newsgroups: news.software.nntp
Content-Language: en-US
From: no-reply@no.spam (go-while)
Subject: github.com/go-while/nntp-overview
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Lines: 100
Message-ID: <6SGrM.427956$hTH1.411991@fx14.ams4>
X-Complaints-To: abuse@blocknews.net
NNTP-Posting-Date: Wed, 12 Jul 2023 23:40:50 UTC
Organization: blocknews - www.blocknews.net
Date: Thu, 13 Jul 2023 02:12:31 +0200
X-Received-Bytes: 4328
 by: go-while - Thu, 13 Jul 2023 00:12 UTC

Hello World!

just want to create a topic for my repo. maybe anyone finds it useful.

https://github.com/go-while/nntp-overview

it is running great so far and connected to a usenet server i'm writing.

feeding mbox files from archive.org as hard as i can and the
nntp-storage module (not released yet) in combo with nntp-overview
writes articles faster than i can extract them from mbox files and feed
them via nntp :=D

why i'm doing this?
i tried importing few tb from archive.org and did not wanna wait for
month. inn2 is too slow. limited to single core and gets slower and
slower with every more incoming articles it has to check vs history.
diablo is hell to compile... config... documentation?
any (performant) alternatives do(n't) exist?

my code works without a history file. it can write one but i see no need
why. the overview files represent a perfect history as long as the app
not crashes and crushes the memory mapped overview files xD

i'm simply storing articles with their messageid as sha256 in flat file
structure. checking if an article exists is easy, stat the filesystem
for the head file (and body if you want).

storage engine splits head and body in different files and stores them
in different parent dirs, 3 levels deep [a-f0-9] so heads and body can
go to different hdd/ssd/nfs storage for example.

good old reiserfs on zfs is quite fast with enough disks and ram :D
still not sure about recordsize, need more benchmarking. bigger
recordsize gives better compression but write amplification gets nasty.
set to 32K at the moment but got a broken disk and waiting for
resilvering to finish. almost done my playground! :D :=)

state: DEGRADED
status: One or more devices is currently being resilvered.
The pool will continue to function, possibly in a degraded state.
action: Wait for the resilver to complete.
scan: resilver in progress since Wed Jul 12 16:32:32 2023
39.2T scanned at 1.66G/s, 38.0T issued at 1.61G/s, 39.2T total
1.79T resilvered, 96.95% done, 00:12:42 to go

redis is also already included in the storage engine to map group/msgnum
to storage/msgidhash or/and it creates softlinks, both from overview
xref information. that's already working and you can set as many workers
as you need =) even more workers that can push to redis but limit
syncwrites for softlinks ;) maybe use redis, mongo or rocksdb as storage
too or invent cyclic buffers in go but i only have 2 hands and a wife
and i love both more than anything, my wife and go, gogo power rangers!

what do you think?
does the world need another usenet server written in go?
do it anyways, as far as i can ;)

i'll update when new server arrives and public access to the still
importing archive is possible, maybe this weekend.

a patch-1 is queued and i hope to find some beta tester here.

go-while, over and out.

https://github.com/go-while/nntp-overview

nntp-overview

nntp-overview generates .overview files per group from incoming usenet
headers (POST, IHAVE, TAKETHIS).

Generation is done in a concurrent way and files are mmap'ed while open.

Overview file content is human readable based on RFC overview.FMT

OV_Handler

OV_Handler processes MMAP open/retrieve/park/close requests and
schedules workers for writing overview data.

The system keeps track of last message number per group when adding new
overview to group.

When integrated into a usenet server: works as a central message
numbering station per group.

Example integration in repo:
https://github.com/go-while/nntp-overview_test

License
MIT

Author
go-while

Re: github.com/go-while/nntp-overview

<u8notr$6bg9$1@matrix.hispagatos.org>

  copy mid

https://www.rocksolidbbs.com/computers/article-flat.php?id=1890&group=news.software.nntp#1890

  copy link   Newsgroups: news.software.nntp
Path: i2pn2.org!i2pn.org!news.hispagatos.org!.POSTED.static-135-116-26-46.ipcom.comunitel.net!not-for-mail
From: rek2@hispagatos.org.invalid (rek2 hispagatos)
Newsgroups: news.software.nntp
Subject: Re: github.com/go-while/nntp-overview
Date: Thu, 13 Jul 2023 02:52:43 -0000 (UTC)
Organization: Hispagatos
Message-ID: <u8notr$6bg9$1@matrix.hispagatos.org>
References: <6SGrM.427956$hTH1.411991@fx14.ams4>
Reply-To: ReK2 <rek2@hispagatos.org>
Injection-Date: Thu, 13 Jul 2023 02:52:43 -0000 (UTC)
Injection-Info: matrix.hispagatos.org; posting-host="static-135-116-26-46.ipcom.comunitel.net:46.26.116.135";
logging-data="208393"; mail-complaints-to="usenet@matrix.hispagatos.org"
User-Agent: slrn/pre1.0.4-9 (Linux)
 by: rek2 hispagatos - Thu, 13 Jul 2023 02:52 UTC

On 2023-07-13, go-while <no-reply@no.spam> wrote:
> Hello World!
>
> just want to create a topic for my repo. maybe anyone finds it useful.
>
> https://github.com/go-while/nntp-overview
>
Very cool.
Rek2

--
{gemini,https}://{,rek2.}hispagatos.org
https://hispagatos.space/@rek2

XFS / ZFS TEST DATASET notes Re: github.com/go-while/nntp-overview

<buRsM.750701$NrRf.67234@fx02.ams4>

  copy mid

https://www.rocksolidbbs.com/computers/article-flat.php?id=1902&group=news.software.nntp#1902

  copy link   Newsgroups: news.software.nntp
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!feeder1.feed.usenet.farm!feed.usenet.farm!peer01.ams4!peer.am4.highwinds-media.com!news.highwinds-media.com!fx02.ams4.POSTED!not-for-mail
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
Thunderbird/102.13.0
Subject: XFS / ZFS TEST DATASET notes Re: github.com/go-while/nntp-overview
Newsgroups: news.software.nntp
References: <6SGrM.427956$hTH1.411991@fx14.ams4>
Content-Language: en-US
From: no-reply@no.spam (go-while)
In-Reply-To: <6SGrM.427956$hTH1.411991@fx14.ams4>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Lines: 70
Message-ID: <buRsM.750701$NrRf.67234@fx02.ams4>
X-Complaints-To: abuse@blocknews.net
NNTP-Posting-Date: Sun, 16 Jul 2023 12:35:19 UTC
Organization: blocknews - www.blocknews.net
Date: Sun, 16 Jul 2023 15:09:28 +0200
X-Received-Bytes: 3633
 by: go-while - Sun, 16 Jul 2023 13:09 UTC

TEST DATASET: splitted 202G head + 232G body parts = 434G total

imported from archive.org mbox files or other source:
utzoo, netnews cdroms, funet.fi, ancientfj-2004, socmotsscrape
usenet-[af-ch], parts of usenet-comp, usenet0203.tar and
some more ...

TEST DATASET on reiserfs3.6 on zfs:
head and body are stored by sha256sum of messageid in folders:
cache/[head|body]/[a-f0-9]/[a-f0-9]/[a-f0-9]/hash[3:].[head|body]

the distribution over all 16 parent folders is very even
and tables below show size of only 1 parent-directory
guess a/*/*/.. or 0/*/*/..

every head/[a-f0-9]/ dir occupies ~12.6G on reiserfs = 202G
every body/[a-f0-9]/ dir occupies ~14.5G on reiserfs = 232G
and got compressed down to head 82G + body 118G = 200G on zfs

did some tests with different mkfs.XFS options
-b size=___
-i size=___
-m crc=0 -i maxpct=100
=> as guest on ZFS with compression=lz4 and recordsize=128K

fallocate'd 11TB partitions on zfs
=> mkfs.XFS -m crc=0 -i maxpct=100 -b size=___ -i size=___ /dev/loopN
=> mount /dev/loopN ... and moved the dataset in

size of
# XFS | block inode used space used space CompRatio Ratio
# Inodes | XFS -b XFS -i ZFS /head/ → XFS /head/ ZFS head XFS / ZFS
# 42b | 512 256 2.2 GB 5.1 GB 2.7x 2.3
# 42b | 1024 256 2.5 GB 5.8 GB 2.9x 2.3
# 21b | 1024 512 2.5 GB 6.5 GB 3.3x 2.6
# 42b | 2048 256 2.7 GB 7.4 GB 3.6x 2.7
# 10b | 2048 1024 2.7 GB 9.7 GB 4.4x 3.6
# 21b | 4096 512 3.0 GB 15.0 GB 5.6x 5.0

size of
# XFS | block inode used space used space CompRatio Ratio
# Inodes | XFS -b XFS -i ZFS /body/ → XFS /body/ ZFS body XFS / ZFS
# 42b | 512 256 4.1 GB 6.9 GB 1.9x 1.7
# 42b | 1024 256 4.3 GB 7.9 GB 2.1x 1.8
# 21b | 1024 512 4.3 GB 8.5 GB 2.3x 2.0
# 42b | 2048 256 4.6 GB 9.9 GB 2.6x 2.2
# 10b | 2048 1024 4.7 GB 13.0 GB 3.1x 2.8
# 21b | 4096 512 4.9 GB 16.0 GB 3.8x 3.3

what can we see?
1. higher XFS inodesize: less xfs inodes
2. higher XFS blocksize:
more space usage on zfs and worsen on xfs
higher (more not better*) zfs compression

* "more" zfs compression is just nul? compression of wasted space
and more used space for no reason?

sadly no performance data because zfs was degraded while testing

i think i'll go with '-b size=512 -i size=256' for now
+ less zfs compression but more xfs inodes
+ less space usage on both filesystems (zfs host and xfs guest).
+ 42 is the answer to everything!

happy sunday!

Re: XFS / ZFS TEST DATASET notes Re: github.com/go-while/nntp-overview

<kouvM.93469$euB5.43905@fx05.ams4>

  copy mid

https://www.rocksolidbbs.com/computers/article-flat.php?id=1975&group=news.software.nntp#1975

  copy link   Newsgroups: news.software.nntp
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!newsreader4.netcologne.de!news.netcologne.de!peer01.ams1!peer.ams1.xlned.com!news.xlned.com!peer01.ams4!peer.am4.highwinds-media.com!news.highwinds-media.com!fx05.ams4.POSTED!not-for-mail
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
Thunderbird/102.13.0
Subject: Re: XFS / ZFS TEST DATASET notes Re:
github.com/go-while/nntp-overview
Newsgroups: news.software.nntp
References: <6SGrM.427956$hTH1.411991@fx14.ams4>
<buRsM.750701$NrRf.67234@fx02.ams4>
Content-Language: en-US
From: no-reply@no.spam (go-while)
In-Reply-To: <buRsM.750701$NrRf.67234@fx02.ams4>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Lines: 121
Message-ID: <kouvM.93469$euB5.43905@fx05.ams4>
X-Complaints-To: abuse@blocknews.net
NNTP-Posting-Date: Mon, 24 Jul 2023 12:46:08 UTC
Organization: blocknews - www.blocknews.net
Date: Mon, 24 Jul 2023 15:25:56 +0200
X-Received-Bytes: 4583
 by: go-while - Mon, 24 Jul 2023 13:25 UTC

XFS partitions on ZFS
compression=lz4 recordsize=32K

tank0/xfs/head compressratio 2.91x
tank0/xfs/body compressratio 1.80x

XFS partitions need this space:

Filesystem Used Mounted
tank0/xfs/head/a 13G /tank0/xfs/head/a
tank0/xfs/body/a 28G /tank0/xfs/body/a
tank0/xfs/head/b 13G /tank0/xfs/head/b
tank0/xfs/body/b 28G /tank0/xfs/body/b
tank0/xfs/head/c 13G /tank0/xfs/head/c
tank0/xfs/body/c 28G /tank0/xfs/body/c
tank0/xfs/head/d 13G /tank0/xfs/head/d
tank0/xfs/body/d 28G /tank0/xfs/body/d
tank0/xfs/head/e 13G /tank0/xfs/head/e
tank0/xfs/body/e 28G /tank0/xfs/body/e
tank0/xfs/head/f 13G /tank0/xfs/head/f
tank0/xfs/body/f 28G /tank0/xfs/body/f
tank0/xfs/head/0 13G /tank0/xfs/head/0
tank0/xfs/body/0 28G /tank0/xfs/body/0
tank0/xfs/head/1 13G /tank0/xfs/head/1
tank0/xfs/body/1 28G /tank0/xfs/body/1
tank0/xfs/head/2 13G /tank0/xfs/head/2
tank0/xfs/body/2 28G /tank0/xfs/body/2
tank0/xfs/head/3 13G /tank0/xfs/head/3
tank0/xfs/body/3 28G /tank0/xfs/body/3
tank0/xfs/head/4 13G /tank0/xfs/head/4
tank0/xfs/body/4 28G /tank0/xfs/body/4
tank0/xfs/head/5 13G /tank0/xfs/head/5
tank0/xfs/body/5 28G /tank0/xfs/body/5
tank0/xfs/head/6 13G /tank0/xfs/head/6
tank0/xfs/body/6 28G /tank0/xfs/body/6
tank0/xfs/head/7 13G /tank0/xfs/head/7
tank0/xfs/body/7 28G /tank0/xfs/body/7
tank0/xfs/head/8 13G /tank0/xfs/head/8
tank0/xfs/body/8 28G /tank0/xfs/body/8
tank0/xfs/head/9 13G /tank0/xfs/head/9
tank0/xfs/body/9 28G /tank0/xfs/body/9

XFS itself says it uses this space:

Filesystem Used Mounted
/dev/loop32 34G /mnt/xfs/head/a
/dev/loop33 34G /mnt/xfs/head/b
/dev/loop34 34G /mnt/xfs/head/c
/dev/loop35 34G /mnt/xfs/head/d
/dev/loop36 34G /mnt/xfs/head/e
/dev/loop37 34G /mnt/xfs/head/f
/dev/loop38 34G /mnt/xfs/head/0
/dev/loop39 34G /mnt/xfs/head/1
/dev/loop40 34G /mnt/xfs/head/2
/dev/loop41 34G /mnt/xfs/head/3
/dev/loop42 34G /mnt/xfs/head/4
/dev/loop43 34G /mnt/xfs/head/5
/dev/loop44 34G /mnt/xfs/head/6
/dev/loop45 34G /mnt/xfs/head/7
/dev/loop46 34G /mnt/xfs/head/8
/dev/loop47 34G /mnt/xfs/head/9
/dev/loop48 49G /mnt/xfs/body/a
/dev/loop49 49G /mnt/xfs/body/b
/dev/loop50 49G /mnt/xfs/body/c
/dev/loop51 49G /mnt/xfs/body/d
/dev/loop52 49G /mnt/xfs/body/e
/dev/loop53 49G /mnt/xfs/body/f
/dev/loop54 49G /mnt/xfs/body/0
/dev/loop55 49G /mnt/xfs/body/1
/dev/loop56 49G /mnt/xfs/body/2
/dev/loop57 49G /mnt/xfs/body/3
/dev/loop58 49G /mnt/xfs/body/4
/dev/loop59 49G /mnt/xfs/body/5
/dev/loop60 49G /mnt/xfs/body/6
/dev/loop61 49G /mnt/xfs/body/7
/dev/loop62 49G /mnt/xfs/body/8
/dev/loop63 49G /mnt/xfs/body/9

moving the same data (raw .head + .body files)
from XFS into a ZFS dataset

tank0/cache/head compressratio 1.00x
tank0/cache/body compressratio 1.17x

results in this used space on ZFS?!

tank0/cache/head/a 116G /tank0/cache/head/a
tank0/cache/head/b 116G /tank0/cache/head/b
...
tank0/cache/body/a 124G /tank0/cache/body/a
tank0/cache/body/b 124G /tank0/cache/body/b
...

i stopped moving it...

looks like zfs does not like many very small files aka usenet articles
and compression does not work.

finally inodes: XFS vs ZFS raw dataset are almost identical

/dev/loop32 42846221114 19964404 /mnt/xfs/head/a
/dev/loop33 42846243638 19958208 /mnt/xfs/head/b
/dev/loop48 42783061340 19964404 /mnt/xfs/body/a
/dev/loop49 42783346284 19958208 /mnt/xfs/body/b
....

tank0/cache/head/a 50835458823 19964404 /tank0/cache/head/a
tank0/cache/head/b 50835452630 19958211 /tank0/cache/head/b
tank0/cache/body/a 50835159146 19664727 /tank0/cache/body/a
tank0/cache/body/b 50835452630 19958211 /tank0/cache/body/b
....

Kind Regards

Re: XFS / ZFS TEST DATASET notes Re: github.com/go-while/nntp-overview

<u9re14$ecv$1@nnrp.usenet.blueworldhosting.com>

  copy mid

https://www.rocksolidbbs.com/computers/article-flat.php?id=1991&group=news.software.nntp#1991

  copy link   Newsgroups: news.software.nntp
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!diablo1.usenet.blueworldhosting.com!nnrp.usenet.blueworldhosting.com!.POSTED!not-for-mail
From: jesse.rehmer@blueworldhosting.com (Jesse Rehmer)
Newsgroups: news.software.nntp
Subject: Re: XFS / ZFS TEST DATASET notes Re: github.com/go-while/nntp-overview
Date: Wed, 26 Jul 2023 15:27:32 -0000 (UTC)
Organization: BlueWorld Hosting Usenet (https://usenet.blueworldhosting.com)
Message-ID: <u9re14$ecv$1@nnrp.usenet.blueworldhosting.com>
References: <6SGrM.427956$hTH1.411991@fx14.ams4> <buRsM.750701$NrRf.67234@fx02.ams4> <kouvM.93469$euB5.43905@fx05.ams4>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8; format=fixed
Content-Transfer-Encoding: 8bit
Injection-Date: Wed, 26 Jul 2023 15:27:32 -0000 (UTC)
Injection-Info: nnrp.usenet.blueworldhosting.com; posting-account="k8cWG9+Y/93vxQYza75s9JQFoL8rgVF3P1Yluveoqs0";
logging-data="14751"; mail-complaints-to="usenet@blueworldhosting.com"
User-Agent: Usenapp for MacOS
Cancel-Lock: sha1:GmFwMe1MFy8TQkcbvkhku1l1faM= sha256:NOjx0jvjgVj7WPNxOj6SOrTR8BNl/oY5suRxZE78q80=
sha1:ark3qTI7bXLqdLtexB1453lMT2k= sha256:nUBLP1Siw3bzi828G1Y2YY2tpnmKllX1UtJEVhOw8nE=
X-Usenapp: v1.27.1/d - Full License
 by: Jesse Rehmer - Wed, 26 Jul 2023 15:27 UTC

On Jul 24, 2023 at 8:25:56 AM CDT, "go-while" <no-reply@no.spam> wrote:

> XFS partitions on ZFS
> compression=lz4 recordsize=32K
>
> tank0/xfs/head compressratio 2.91x
> tank0/xfs/body compressratio 1.80x
>
> XFS partitions need this space:
>
> Filesystem Used Mounted
> tank0/xfs/head/a 13G /tank0/xfs/head/a
> tank0/xfs/body/a 28G /tank0/xfs/body/a
> tank0/xfs/head/b 13G /tank0/xfs/head/b
> tank0/xfs/body/b 28G /tank0/xfs/body/b
> tank0/xfs/head/c 13G /tank0/xfs/head/c
> tank0/xfs/body/c 28G /tank0/xfs/body/c
> tank0/xfs/head/d 13G /tank0/xfs/head/d
> tank0/xfs/body/d 28G /tank0/xfs/body/d
> tank0/xfs/head/e 13G /tank0/xfs/head/e
> tank0/xfs/body/e 28G /tank0/xfs/body/e
> tank0/xfs/head/f 13G /tank0/xfs/head/f
> tank0/xfs/body/f 28G /tank0/xfs/body/f
> tank0/xfs/head/0 13G /tank0/xfs/head/0
> tank0/xfs/body/0 28G /tank0/xfs/body/0
> tank0/xfs/head/1 13G /tank0/xfs/head/1
> tank0/xfs/body/1 28G /tank0/xfs/body/1
> tank0/xfs/head/2 13G /tank0/xfs/head/2
> tank0/xfs/body/2 28G /tank0/xfs/body/2
> tank0/xfs/head/3 13G /tank0/xfs/head/3
> tank0/xfs/body/3 28G /tank0/xfs/body/3
> tank0/xfs/head/4 13G /tank0/xfs/head/4
> tank0/xfs/body/4 28G /tank0/xfs/body/4
> tank0/xfs/head/5 13G /tank0/xfs/head/5
> tank0/xfs/body/5 28G /tank0/xfs/body/5
> tank0/xfs/head/6 13G /tank0/xfs/head/6
> tank0/xfs/body/6 28G /tank0/xfs/body/6
> tank0/xfs/head/7 13G /tank0/xfs/head/7
> tank0/xfs/body/7 28G /tank0/xfs/body/7
> tank0/xfs/head/8 13G /tank0/xfs/head/8
> tank0/xfs/body/8 28G /tank0/xfs/body/8
> tank0/xfs/head/9 13G /tank0/xfs/head/9
> tank0/xfs/body/9 28G /tank0/xfs/body/9
>
>
> XFS itself says it uses this space:
>
> Filesystem Used Mounted
> /dev/loop32 34G /mnt/xfs/head/a
> /dev/loop33 34G /mnt/xfs/head/b
> /dev/loop34 34G /mnt/xfs/head/c
> /dev/loop35 34G /mnt/xfs/head/d
> /dev/loop36 34G /mnt/xfs/head/e
> /dev/loop37 34G /mnt/xfs/head/f
> /dev/loop38 34G /mnt/xfs/head/0
> /dev/loop39 34G /mnt/xfs/head/1
> /dev/loop40 34G /mnt/xfs/head/2
> /dev/loop41 34G /mnt/xfs/head/3
> /dev/loop42 34G /mnt/xfs/head/4
> /dev/loop43 34G /mnt/xfs/head/5
> /dev/loop44 34G /mnt/xfs/head/6
> /dev/loop45 34G /mnt/xfs/head/7
> /dev/loop46 34G /mnt/xfs/head/8
> /dev/loop47 34G /mnt/xfs/head/9
> /dev/loop48 49G /mnt/xfs/body/a
> /dev/loop49 49G /mnt/xfs/body/b
> /dev/loop50 49G /mnt/xfs/body/c
> /dev/loop51 49G /mnt/xfs/body/d
> /dev/loop52 49G /mnt/xfs/body/e
> /dev/loop53 49G /mnt/xfs/body/f
> /dev/loop54 49G /mnt/xfs/body/0
> /dev/loop55 49G /mnt/xfs/body/1
> /dev/loop56 49G /mnt/xfs/body/2
> /dev/loop57 49G /mnt/xfs/body/3
> /dev/loop58 49G /mnt/xfs/body/4
> /dev/loop59 49G /mnt/xfs/body/5
> /dev/loop60 49G /mnt/xfs/body/6
> /dev/loop61 49G /mnt/xfs/body/7
> /dev/loop62 49G /mnt/xfs/body/8
> /dev/loop63 49G /mnt/xfs/body/9
>
>
> moving the same data (raw .head + .body files)
> from XFS into a ZFS dataset
>
>
> tank0/cache/head compressratio 1.00x
> tank0/cache/body compressratio 1.17x
>
> results in this used space on ZFS?!
>
> tank0/cache/head/a 116G /tank0/cache/head/a
> tank0/cache/head/b 116G /tank0/cache/head/b
> ..
> tank0/cache/body/a 124G /tank0/cache/body/a
> tank0/cache/body/b 124G /tank0/cache/body/b
> ..
>
> i stopped moving it...
>
> looks like zfs does not like many very small files aka usenet articles
> and compression does not work.
>
>
> finally inodes: XFS vs ZFS raw dataset are almost identical
>
> /dev/loop32 42846221114 19964404 /mnt/xfs/head/a
> /dev/loop33 42846243638 19958208 /mnt/xfs/head/b
> /dev/loop48 42783061340 19964404 /mnt/xfs/body/a
> /dev/loop49 42783346284 19958208 /mnt/xfs/body/b
> ...
>
> tank0/cache/head/a 50835458823 19964404 /tank0/cache/head/a
> tank0/cache/head/b 50835452630 19958211 /tank0/cache/head/b
> tank0/cache/body/a 50835159146 19664727 /tank0/cache/body/a
> tank0/cache/body/b 50835452630 19958211 /tank0/cache/body/b
> ...
>
>
>
> Kind Regards

For what it's worth, using INN with tradspool I don't see hardly any
compression (ZFS), but when using CNFS buffers I get a little over 3x.

Re: XFS / ZFS TEST DATASET notes Re: github.com/go-while/nntp-overview

<u9rk1u$2618$1@usenet.csail.mit.edu>

  copy mid

https://www.rocksolidbbs.com/computers/article-flat.php?id=1992&group=news.software.nntp#1992

  copy link   Newsgroups: news.software.nntp
Path: i2pn2.org!i2pn.org!usenet.goja.nl.eu.org!weretis.net!feeder8.news.weretis.net!news.imp.ch!usenet.csail.mit.edu!.POSTED.hergotha.csail.mit.edu!not-for-mail
From: wollman@bimajority.org (Garrett Wollman)
Newsgroups: news.software.nntp
Subject: Re: XFS / ZFS TEST DATASET notes Re: github.com/go-while/nntp-overview
Date: Wed, 26 Jul 2023 17:10:22 -0000 (UTC)
Organization: none
Message-ID: <u9rk1u$2618$1@usenet.csail.mit.edu>
References: <6SGrM.427956$hTH1.411991@fx14.ams4> <buRsM.750701$NrRf.67234@fx02.ams4> <kouvM.93469$euB5.43905@fx05.ams4> <u9re14$ecv$1@nnrp.usenet.blueworldhosting.com>
Injection-Date: Wed, 26 Jul 2023 17:10:22 -0000 (UTC)
Injection-Info: usenet.csail.mit.edu; posting-host="hergotha.csail.mit.edu:207.180.169.34";
logging-data="71720"; mail-complaints-to="security@csail.mit.edu"
X-Newsreader: trn 4.0-test77 (Sep 1, 2010)
Originator: wollman@bimajority.org (Garrett Wollman)
 by: Garrett Wollman - Wed, 26 Jul 2023 17:10 UTC

In article <u9re14$ecv$1@nnrp.usenet.blueworldhosting.com>,
Jesse Rehmer <jesse.rehmer@blueworldhosting.com> wrote:

>For what it's worth, using INN with tradspool I don't see hardly any
>compression (ZFS), but when using CNFS buffers I get a little over 3x.

On my small text-only server with tradspool I see:

NAME PROPERTY VALUE SOURCE
rootvg/root/usr/local/news/spool compressratio 1.43x -

....but that's less than 10 GiB (about 880,000 articles).

-GAWollman

--
Garrett A. Wollman | "Act to avoid constraining the future; if you can,
wollman@bimajority.org| act to remove constraint from the future. This is
Opinions not shared by| a thing you can do, are able to do, to do together."
my employers. | - Graydon Saunders, _A Succession of Bad Days_ (2015)

Re: XFS / ZFS TEST DATASET notes Re: github.com/go-while/nntp-overview

<u9rrdg$1eij$1@nnrp.usenet.blueworldhosting.com>

  copy mid

https://www.rocksolidbbs.com/computers/article-flat.php?id=1993&group=news.software.nntp#1993

  copy link   Newsgroups: news.software.nntp
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!diablo1.usenet.blueworldhosting.com!nnrp.usenet.blueworldhosting.com!.POSTED!not-for-mail
From: jesse.rehmer@blueworldhosting.com (Jesse Rehmer)
Newsgroups: news.software.nntp
Subject: Re: XFS / ZFS TEST DATASET notes Re: github.com/go-while/nntp-overview
Date: Wed, 26 Jul 2023 19:16:00 -0000 (UTC)
Organization: BlueWorld Hosting Usenet (https://usenet.blueworldhosting.com)
Message-ID: <u9rrdg$1eij$1@nnrp.usenet.blueworldhosting.com>
References: <6SGrM.427956$hTH1.411991@fx14.ams4> <buRsM.750701$NrRf.67234@fx02.ams4> <kouvM.93469$euB5.43905@fx05.ams4> <u9re14$ecv$1@nnrp.usenet.blueworldhosting.com> <u9rk1u$2618$1@usenet.csail.mit.edu>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8; format=fixed
Content-Transfer-Encoding: 8bit
Injection-Date: Wed, 26 Jul 2023 19:16:00 -0000 (UTC)
Injection-Info: nnrp.usenet.blueworldhosting.com; posting-account="k8cWG9+Y/93vxQYza75s9JQFoL8rgVF3P1Yluveoqs0";
logging-data="47699"; mail-complaints-to="usenet@blueworldhosting.com"
User-Agent: Usenapp for MacOS
Cancel-Lock: sha1:PG/dNJX3eejlU/tZi0Ow7VckNd8= sha256:eYL+vY69UB1e+HQZDgZOnz057sKZW3cTr1jPJhfoY90=
sha1:kzuo+m5d3zh6FNNctweqTgZlP0Q= sha256:rVB+8w27XLuwLTiCq05Qg1hn9KFEkroxLM6yPjzT7wI=
X-Usenapp: v1.27.1/d - Full License
 by: Jesse Rehmer - Wed, 26 Jul 2023 19:16 UTC

On Jul 26, 2023 at 12:10:22 PM CDT, "Garrett Wollman" <Garrett Wollman> wrote:

> In article <u9re14$ecv$1@nnrp.usenet.blueworldhosting.com>,
> Jesse Rehmer <jesse.rehmer@blueworldhosting.com> wrote:
>
>> For what it's worth, using INN with tradspool I don't see hardly any
>> compression (ZFS), but when using CNFS buffers I get a little over 3x.
>
> On my small text-only server with tradspool I see:
>
> NAME PROPERTY VALUE SOURCE
> rootvg/root/usr/local/news/spool compressratio 1.43x -
>
> ...but that's less than 10 GiB (about 880,000 articles).
>
> -GAWollman

Just under 185,000,000 articles here, duplicated between two boxes,
approximately 900GB of articles and 130GB overview:

tradspool:

$ zfs get compressratio
NAME PROPERTY VALUE SOURCE
zroot compressratio 1.11x -

CNFS:

$ zfs get compressratio
NAME PROPERTY VALUE SOURCE
zroot compressratio 3.03x -

Re: XFS / ZFS TEST DATASET notes Re: github.com/go-while/nntp-overview

<u9tj4o$31fs5$1@news.xorox.net>

  copy mid

https://www.rocksolidbbs.com/computers/article-flat.php?id=1994&group=news.software.nntp#1994

  copy link   Newsgroups: news.software.nntp
Path: i2pn2.org!i2pn.org!usenet.goja.nl.eu.org!weretis.net!feeder8.news.weretis.net!news.xorox.net!.POSTED!not-for-mail
From: andre@usenapp.root (Andre)
Newsgroups: news.software.nntp
Subject: Re: XFS / ZFS TEST DATASET notes Re: github.com/go-while/nntp-overview
Date: Thu, 27 Jul 2023 11:07:04 -0000 (UTC)
Organization: Xoroxsoft - xoroxsoft.com
Message-ID: <u9tj4o$31fs5$1@news.xorox.net>
References: <6SGrM.427956$hTH1.411991@fx14.ams4> <u9re14$ecv$1@nnrp.usenet.blueworldhosting.com> <u9rk1u$2618$1@usenet.csail.mit.edu> <u9rrdg$1eij$1@nnrp.usenet.blueworldhosting.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8; format=fixed
Content-Transfer-Encoding: 8bit
X-Trace: xorox.net cb215a9ea34d20f1bbca01a04ae3a9ed1a1569819602e74747ef29676b27c3f3
X-Complaints-To: abuse@xorox.net
User-Agent: Usenapp for MacOS
Cancel-Lock: sha1:A1LUSphZCjIl8h+G4+jXY6fpn8Y= sha256:mIkGOjBeWm/AXtWUXQTZsW7VsKQzV/H6s4ebGrO5kbg=
X-Usenapp: v1.27.1/l - Full License
 by: Andre - Thu, 27 Jul 2023 11:07 UTC

On 26 Jul 2023 at 21:16:00 CEST, "Jesse Rehmer"
<jesse.rehmer@blueworldhosting.com> wrote:

> Just under 185,000,000 articles here, duplicated between two boxes,
> approximately 900GB of articles and 130GB overview:
>
> tradspool:
>
> $ zfs get compressratio
> NAME PROPERTY VALUE SOURCE
> zroot compressratio 1.11x -
>
> CNFS:
>
> $ zfs get compressratio
> NAME PROPERTY VALUE SOURCE
> zroot compressratio 3.03x -

Thanks for the info. That's really interesting.

Here 451,167,356 text only articles on ZFS with lz4 compression.

timecaf:
compressratio 2.08x
used 568G
logicalused 1.16T

overview tradindexed (xfs):
264G

So it seems that CNFS works better for compression than timecaf.
Do you also use lz4?

--
Thanks,
Andre.

Re: XFS / ZFS TEST DATASET notes Re: github.com/go-while/nntp-overview

<FYtwM.88801$8uM.24125@fx11.ams4>

  copy mid

https://www.rocksolidbbs.com/computers/article-flat.php?id=1995&group=news.software.nntp#1995

  copy link   Newsgroups: news.software.nntp
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!feeder1.feed.usenet.farm!feed.usenet.farm!peer03.ams4!peer.am4.highwinds-media.com!news.highwinds-media.com!fx11.ams4.POSTED!not-for-mail
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
Thunderbird/102.13.0
Subject: Re: XFS / ZFS TEST DATASET notes Re:
github.com/go-while/nntp-overview
Content-Language: en-US
Newsgroups: news.software.nntp
References: <6SGrM.427956$hTH1.411991@fx14.ams4>
<u9re14$ecv$1@nnrp.usenet.blueworldhosting.com>
<u9rk1u$2618$1@usenet.csail.mit.edu>
<u9rrdg$1eij$1@nnrp.usenet.blueworldhosting.com>
<u9tj4o$31fs5$1@news.xorox.net>
From: no-reply@no.spam (go-while)
In-Reply-To: <u9tj4o$31fs5$1@news.xorox.net>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Lines: 20
Message-ID: <FYtwM.88801$8uM.24125@fx11.ams4>
X-Complaints-To: abuse@blocknews.net
NNTP-Posting-Date: Thu, 27 Jul 2023 13:05:41 UTC
Organization: blocknews - www.blocknews.net
Date: Thu, 27 Jul 2023 15:47:37 +0200
X-Received-Bytes: 1659
 by: go-while - Thu, 27 Jul 2023 13:47 UTC

On 27.07.23 13:07, Andre wrote:
> So it seems that CNFS works better for compression than timecaf.
> Do you also use lz4?
>

i'm not sure if "more" compression with cnfs is really better.
may be more null/sparse compression of not totally filled blocks?
but who cares. lz4 does the job and vs. tradspool wins without question.

cnfs storage and buffindexed overview
space on disk after compression

tank0/cycbufs/gwene compressratio 5.13x - 302G
tank0/history/gwene compressratio 1.87x - 21G
tank0/overview/gwene compressratio 2.42x - 47G

tank0/cycbufs/gmane compressratio 2.97x - 685G
tank0/history/gmane compressratio 1.87x - 11G
tank0/overview/gmane compressratio 2.97x - 28G

1
server_pubkey.txt

rocksolid light 0.9.8
clearnet tor