GNU bug report logs - #72340
guix should not ask me to report a bug if it fails due to running out of memory

Previous Next

Package: guix;

Reported by: "Zack Weinberg" <zack <at> owlfolio.org>

Date: Sun, 28 Jul 2024 16:04:02 UTC

Severity: normal

Full log


View this message in rfc822 format

From: "Zack Weinberg" <zack <at> owlfolio.org>
To: "Simon Tournier" <zimon.toutoune <at> gmail.com>, 72340 <at> debbugs.gnu.org
Subject: bug#72340: guix should not ask me to report a bug if it fails due to running out of memory
Date: Tue, 03 Sep 2024 11:30:41 -0400
On Tue, Sep 3, 2024, at 10:39 AM, Simon Tournier wrote:
> On Sun, 28 Jul 2024 at 16:02, "Zack Weinberg" via Bug reports for GNU 
> Guix <bug-guix <at> gnu.org> wrote:
>
>> Computing Guix derivation for 'x86_64-linux'... \
>> GC Warning: Failed to expand heap by 8388608 bytes
>> [previous line repeats 79 more times]
>> GC Warning: Failed to expand heap by 69632 bytes
>> GC Warning: Out of Memory! Heap size: 402 MiB. Returning NULL!
>> Warning: Unwind-only out of memory exception; skipping pre-unwind handler.
>> guix pull: error: You found a bug: the program
>> '/gnu/store/6pckga173mjbpfz7a2bl93h4gimd8fp5-compute-guix-derivation'
>> failed to compute the derivation for Guix (version:
>> "46a64c7fdd057283063aae6df058579bb07c4b6a"; system: "x86_64-linux";
>> host version: "e4aabf42b33346849cb565199cfafc49d4f0aeff";
>
> I guess this bug had been fixed since then.  Do you still have it?

I reconfigured my Guix system to avoid the bug, so I cannot easily
trigger it anymore.  However, this is not a bug that would go away by
accident.  Until someone writes code specifically intended to produce
a better error message when Guile runs out of memory, the bug will be
live.

> Aside, I am not able to reproduce it:
>
>     guix time-machine -q --commit=e4aabf42b33346849cb565199cfafc49d4f0aeff \
>       -- time-machine -q --commit=46a64c7fdd057283063aae6df058579bb07c4b6a \
>       -- describe

In order to reproduce the bug you need to be working in an environment
(probably a virtual machine is easiest) with a limited amount of
system memory (512MB of RAM and no swap should do it) and memory
overcommit disabled (sysctl -w vm.overcommit_memory=2).

Also, I don't know what "guix time-machine" does but I would not
expect "guix describe" to use substantial amounts of memory.  You need
to run a command that computes a large derivation, such as "guix pull"
or "guix system reconfigure".

zw




This bug report was last modified 287 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.