Empty store items

  • Open
  • quality assurance status badge
Details
3 participants
  • Jérémy Korwin-Zmijowski
  • Leo Famulari
  • Maxime Devos
Owner
unassigned
Submitted by
Leo Famulari
Severity
normal
L
L
Leo Famulari wrote on 1 Aug 2021 23:00
(address . bug-guix@gnu.org)
617c5895-9d2a-40e4-add4-52357d46345b@www.fastmail.com
Thanks for the report. I'm forwarding it to the bug tracker.

On Sun, Aug 1, 2021, at 16:09, Thorsten Wilms wrote:
Toggle quote (98 lines)
> Hi!
>
> I wanted to try use lv2ls and lv2info, both belonging to lilv and found
> the commands to do nothing, have no man page and no --help. Then I
> tried to start Ardour, but it fails with:
>
> ```
> WARNING: Could not check your glib-2.0 for mutex locking atomic
> operations.
>
> /gnu/store/yxivqfaqiaihycfpzrk5pil6p4x5s4j2-ardour-6.6/lib/ardour6/ardour-6.6.0:
> error while loading shared
> libraries:
> /gnu/store/5q75cw8lnw4kfg9nss5vwkx8pxakk96l-lilv-0.24.10/lib/liblilv-0.so.
> 0: file too short
> ```
>
> That store item has size zero, indeed.
>
> I tried:
>
> ```
> $: sudo guix build --repair lilv
> path `/gnu/store/5q75cw8lnw4kfg9nss5vwkx8pxakk96l-lilv-0.24.10' is
> corrupted or missing!
> substituting /gnu/store/5q75cw8lnw4kfg9nss5vwkx8pxakk96l-lilv-0.24.10...
> downloading from
> https://ci.guix.gnu.org/nar/lzip/5q75cw8lnw4kfg9nss5vwkx8pxakk96l-lilv-0.24.10 ...
> lilv-0.24.10
> 73KiB
> 1.3MiB/s 00:00 [##################] 100.0% path
> `/gnu/store/4cvazxmvkh29l83qk50wy3yb7whpq9md-sord-0.16.8' is corrupted
> or missing! found corrupted or missing path
> `/gnu/store/4cvazxmvkh29l83qk50wy3yb7whpq9md-sord-0.16.8' in the output
> closure of
> `/gnu/store/0l7pb0nf8fpp7ddv576ighprnz29lgjd-lilv-0.24.10.drv' path
> `/gnu/store/bzn76d1mf3bnrac3z5w829fywz4njwa5-sratom-0.6.6' is corrupted
> or missing! found corrupted or missing path
> `/gnu/store/bzn76d1mf3bnrac3z5w829fywz4njwa5-sratom-0.6.6' in the
> output closure of
> `/gnu/store/0l7pb0nf8fpp7ddv576ighprnz29lgjd-lilv-0.24.10.drv' path
> `/gnu/store/wx0hlikzcz1x1m84qn1s0z10v9b4kz1q-serd-0.30.8' is corrupted
> or missing! found corrupted or missing path
> `/gnu/store/wx0hlikzcz1x1m84qn1s0z10v9b4kz1q-serd-0.30.8' in the output
> closure of
> `/gnu/store/0l7pb0nf8fpp7ddv576ighprnz29lgjd-lilv-0.24.10.drv'
> substituting /gnu/store/wx0hlikzcz1x1m84qn1s0z10v9b4kz1q-serd-0.30.8...
> downloading from
> https://ci.guix.gnu.org/nar/lzip/wx0hlikzcz1x1m84qn1s0z10v9b4kz1q-serd-0.30.8 ...
> serd-0.30.8
> 55KiB
> 1.4MiB/s 00:00 [##################] 100.0%
> substituting /gnu/store/4cvazxmvkh29l83qk50wy3yb7whpq9md-sord-0.16.8...
> downloading from
> https://ci.guix.gnu.org/nar/lzip/4cvazxmvkh29l83qk50wy3yb7whpq9md-sord-0.16.8 ...
> sord-0.16.8
> 35KiB
> 2.1MiB/s 00:00 [##################] 100.0%
> substituting /gnu/store/bzn76d1mf3bnrac3z5w829fywz4njwa5-sratom-0.6.6...
> downloading from
> https://ci.guix.gnu.org/nar/lzip/bzn76d1mf3bnrac3z5w829fywz4njwa5-sratom-0.6.6 ...
> sratom-0.6.6
> 15KiB
> 2.0MiB/s 00:00 [##################]
> 100.0% /gnu/store/5q75cw8lnw4kfg9nss5vwkx8pxakk96l-lilv-0.24.10
> ```
>
> But the problem persists. All actual lilv store items remain empty.
>
>
> gc --verify thinks the store is in order, so there’s nothing to repair:
>
> ```
> sudo guix gc --verify=repair
> reading the store...
> checking path existence...
> ```
>
> There are 7694 empty items, even after `guix package
> --delete-generations; guix gc --collect-garbage`:
>
> ```
> $: /gnu/store: find -empty | wc -l
> 7694
> ```
>
> I had trouble with fs corruption before, but this always meant being
> thrown into the initramfs prompt for a round of fsck. Didn’t happen
> this time, and fsck did not find any issues now.
>
> There is 39G free disk space and inode use is at 18%.
>
> Any ideas?
>
> --
> Thorsten Wilms <t_w_@freenet.de>
>
>
M
M
Maxime Devos wrote on 22 Oct 2021 22:11
Empty store items
(address . 49811@debbugs.gnu.org)
27de5d983efa55d8d0b14d6cd5d011c36d8b52b7.camel@telenet.be
Toggle quote (1 lines)
> /gnu/store/5q75cw8lnw4kfg9nss5vwkx8pxakk96l-lilv-0.24.10/lib/liblilv-
0.so.
Toggle quote (2 lines)
> 0: file too short

IIRC, someone send a bug report about "guix gc --verify=content/repair"
not interacting properly with content duplication. More precisely,
stuff in /gnu/store/.links wasn't checked for corruption. A solution
might be, when repairing, to replace the file in /gnu/store/.links
instead of hard linking to the file therein, and when verifying,
to verify /gnu/store/.links. I can't find the bug report anymore
though.

As a work-around, you could try deleting /gnu/store/.links
(After remounting the store read-write. I don't know how to do that,
but it should be documented somewhere I think.)

Greetings,
Maxime
--
not hacking on guix for a while, only occassionally looking at IRC logs
and bug reports. E-mails are unsigned until backup is located.
J
J
Jérémy Korwin-Zmijowski wrote on 25 Sep 2022 23:57
(address . 49811@debbugs.gnu.org)
5eb5bbe1ea9f438d9685b03be7f10dee8cd311c9.camel@korwin-zmijowski.fr
Hi,

Right now, I have an empty store item : openssh-8.9p1.
Could be the result of brutal shutdown (laptop battery)…

The Guix daemon uses :

# ll /run/current-system/profile/bin/ssh-agent
lrwxrwxrwx 1 root root 71 1 janv. 1970 /run/current-
system/profile/bin/ssh-agent ->
/gnu/store/phympnkbmb96h1x1wkg8mqx2fsdawrr5-openssh-8.9p1/bin/ssh-agent

Which is OK. But, my regular user uses :

$ ll /home/jeko/.guix-profile/bin/ssh-agent
lrwxrwxrwx 1 root root 71 1 janv. 1970 /home/jeko/.guix-
profile/bin/ssh-agent -> /gnu/store/ffp49k0wci7h36lk38lasx4r5lc4i7iv-
openssh-8.9p1/bin/ssh-agent

$ ll /gnu/store/ffp49k0wci7h36lk38lasx4r5lc4i7iv-openssh-8.9p1/bin/ssh-
agent
-r-xr-xr-x 1 root root 0 1 janv. 1970
/gnu/store/ffp49k0wci7h36lk38lasx4r5lc4i7iv-openssh-8.9p1/bin/ssh-agent

Which is empty.
I tried to fix this situation with :

guix gc --verify=repair,contents
guix build --repair openssh
guix build --check openssh
guix build -d openssh
guix gc --optimize
guix gc -D /gnu/store/ffp49k0wci7h36lk38lasx4r5lc4i7iv-openssh-8.9p1

But nothing worked.
I read somewhere deleting /gnu/store/.links could be helpful but as I'm
not sure I did not.

Until I solved my issue, I can provide info haha

Jérémy
M
M
Maxime Devos wrote on 27 Sep 2022 17:17
ebb22f7c-f6cd-f782-0aad-3b0a960d1944@telenet.be
On 25-09-2022 23:57, Jérémy Korwin-Zmijowski wrote:
Toggle quote (4 lines)
> Hi,
>
> Right now, I have an empty store item : openssh-8.9p1.
> Could be the result of brutal shutdown (laptop battery)…
I think this might be caused by https://issues.guix.gnu.org/58035.
Toggle quote (8 lines)
> guix gc --verify=repair,contents
> guix build --repair openssh
> guix build --check openssh
> guix build -d openssh
> guix gc --optimize
> guix gc -D /gnu/store/ffp49k0wci7h36lk38lasx4r5lc4i7iv-openssh-8.9p1
>
> But nothing worked.
One additional trick: openssh is grafted, try repairing the ungrafted
openssh first:
$ sudo guix build --repair $(guix build openssh --no-grafts)
then the grafted version:
$ sudo guix build --repair $(guix build openssh)
(though if that works, I don't know how the ungrafted openssh could have
been considered valid in the first place).
Toggle quote (2 lines)
> I read somewhere deleting /gnu/store/.links could be helpful but as I'm
> not sure I did not.
It might not be helpful, but it can't be harmful (except for more disk
usage, but running a 'guix gc --optimize' afterwards should address that).
(If you try this, first delete .links, then do the "guix build
--repair", in that order.)
Greetings,
Maxime
Attachment: OpenPGP_signature
?
Your comment

Commenting via the web interface is currently disabled.

To comment on this conversation send an email to 49811@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 49811
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch