Hi Mark,

Mark H Weaver <m...@netris.org> skribis:

> Ludovic Courtès <l...@gnu.org> writes:
>
>> l...@gnu.org (Ludovic Courtès) skribis:
>>
>>> ‘choose-build-machine’ in (guix scripts offload) could/should exclude
>>> build machines that don’t have at least, say, 100 MiB available in their
>>> store.  That would avoid ENOSPC build failures such as
>>> <https://berlin.guixsd.org/log/0hvhrfdjwnmdm2rdf58knshbbikm4ryv-r-bsgenome-hsapiens-ucsc-hg19-masked-1.3.99>.
>>
>> Done in commit 63b0c3eaccdf1816b419632cd7fe721934d2eb27.
>
> Many builds require more free space than 100 MB, so this is only a
> partial solution.  Also, if multiple builds are happening on the same
> machine, the amount of free space available for each build will be less
> than 100 MB.

You’re right, but this at least avoids the most obvious problems.

> Finally, the other related commit that attempts to detect build failures
> caused by ENOSPC by checking if there's at least 10 MB free after the
> failure won't often work in practice, I suspect.  The problem is, by the
> time you perform that check, the build directory has already been
> deleted.

Correct.  (I wasn’t sure the build directory would already be deleted at
that point but rereading build.cc confirms this.)

I suppose the only way to solve this correctly would be to keep the
build tree and then delete it from (guix scripts offload).  WDYT?

Thanks for your feedback!

Ludo’.



Reply via email to