[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#40447:
From: |
Tobias Geerinckx-Rice |
Subject: |
bug#40447: |
Date: |
Sun, 05 Apr 2020 18:01:32 +0200 |
Brendan,
Brendan Tildesley 写道:
Closing since it seems to unrelated. Sorry for wasting your
time. I
think it may have been my ext4 having too many files. i deleted
all my
system generations and gc'd a lot of stuff, and it seems to be
miss
behaving. perhaps it is a different kind of guix bug that it
doesnt
cope with this issue:
Worse: it's an ext4 bug (well, behaviour).
[ 7862.196231] EXT4-fs warning (device sdb1):
ext4_dx_add_entry:2343:
Directory (ino: 24903688) index full, reach max htree level :2
This happens when a directory, almost certainly /gnu/store/.links,
contains more entries than can fit in ext4's ‘dir_index’ hash
table. The file system simply punts.
You can disable this optimisation with tune2fs -O ^dir_index ….
You'll lose some theoretical performance but I haven't heard
complaints in practice. You're not the first one to encounter
this problem.
If that's unacceptable, you can reconfigure your guix-daemon with
‘--disable-deduplication’ in exchange for more storage space for
newer generations.
Or switch to btrfs for a newer, shinier set of pathological
gotchas but not this one :-)
One could work around this in Guix if one were motivated:
- Ignore file system failure instead of making it fatal, falling
back to ‘--disable-deduplication’ behaviour, which is probably
the right thing to do; or
- store .links in ./n/e/sted directories, which will degrade
performance on file systems that handle collisions properly and
is probably not worth the headache.
Kind regards,
T G-R
signature.asc
Description: PGP signature
bug#40447: guix pull failure on master., Ludovic Courtès, 2020/04/06