[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#72340: guix should not ask me to report a bug if it fails due to run
From: |
Zack Weinberg |
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@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