Subject: [bug#51427] [PATCH] nix: libstore: Do not remove unused links when deleting specific items.

From: Ludovic Courtès <[email-masked]>
Date: Thu, 21 Jul 2022 11:21:18 +0200

Hi,

Tobias Geerinckx-Rice <[email-masked]> skribis:

> Liliana Marie Prikler 写道：
>> scheme@(guile-user)> ,t (length (scandir "/gnu/store/.links"))
>> $1 = 213027
>> ;; 1417.872747s real time, 28.514293s run time.  1.284866s spent in
>> GC.
>
> […]
>
>> So yeah, assuming that scandir scales linearly
>
> …your rotational drive is beyond ridiculously slower than mine (an
> ST1000DM010-2EP102):
>
> athena.tobias.gr:~ λ echo 3 | sudo tee /proc/sys/vm/drop_caches 3
> athena.tobias.gr:~ λ guix repl
> […]
> scheme@(guix-user)> ,use (ice-9 ftw)
> scheme@(guix-user)> ,t (length (scandir "/gnu/store/.links"))
> $1 = 164437
> ;; 7.081361s real time, 2.569773s run time.  0.199963s spent in    GC.

It’s crazy that there are two orders of magnitude of difference between
these two hard disks.

Liliana, is your hard disk old or low-end?

I agree that we should strive to have good performance on that kind of
hardware too, but I don’t know how to get there.

Ludo’.