Federico Beffa writes:

> On Tue, Dec 23, 2014 at 1:17 AM, Ludovic Courtès <l...@gnu.org> wrote:
>> I found that “guix build python2-matplotlib -n” triggers a seemingly
>> infinite loop (either uses of ‘package-with-python2’ somehow introduce
>> cycles, or they lead to very large DAGs), which is what is causing Hydra
>> evaluation failures.
>>
>> I tried reverting 25f9a0 but it doesn’t help.
>>
>> Could you try to bisect it and revert or fix the problem?  If it turns
>> out to require more time, could you just comment out the offending parts
>> of python.scm so Hydra can resume?
>
> The build does finish as I've tested it on my machine before
> committing the package. However, for some reason, guix needs very long
> to generate the derivation. On my machine (quad-core Xeon E5520)
> python2-matplotlib takes ca. 31 mins to start building.
> Python2-scipy, which includes python2-matplotlib, takes ca. 80 mins.!
> Currently I do not understand the reason, but I note that matplotlib,
> numpy and scipy are the only python packages with a large number of
> inputs.

I wonder if this could this be a result of package-with-python2's
behavior of recursively creating new package objects for each input in a
package.  As Ludovic suggested, this could easily create very large DAGs
that then need to be processed.

This behavior of package-with-python2 was giving me a nightmare when
trying to code some improvements to `guix refresh -l`, since there would
easily become tens or hundreds of logically identical python package
objects floating through the package dependency DAG.  The reason I
haven't pushed any of those `guix refresh -l` changes is because I
haven't yet figure out a way to get output from it in under ~10 minutes.

-- 
Eric Bavier

Please avoid sending me Word or PowerPoint attachments.
See http://www.gnu.org/philosophy/no-word-attachments.html

Reply via email to