unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* Examples on why ungrafting is necessary
@ 2021-03-11 13:16 zimoun
  2021-03-14 15:49 ` Joshua Branson
  2021-03-14 20:43 ` Leo Famulari
  0 siblings, 2 replies; 3+ messages in thread
From: zimoun @ 2021-03-11 13:16 UTC (permalink / raw)
  To: Guix Devel, Leo Famulari

Hi,

Updating the package r-chemminer, it leads to this huge stack of
grafts.  To be concrete, it is 84 grafts for a “simple” R packages.  On
my machine, the grafting steps are longer than building (compiling and R
dance).

We definitively need a way to tackle this.  Maybe when is in frozen
state, we could spend 2-5 days to tackle as much as graft that we can.

The previous Leo’s initiative is really worth and maybe we should have a
hackathon or something because my feeling is that more grafts are added
than removed.


Cheers,
simon


--8<---------------cut here---------------start------------->8---
applying 1 graft for /gnu/store/…-dbus-1.12.16.drv ...
grafting '/gnu/store/…-dbus-1.12.16' -> '/gnu/store/…-dbus-1.12.16'...
successfully built /gnu/store/…-dbus-1.12.16.drv
applying 1 graft for /gnu/store/…-cyrus-sasl-2.1.27.drv ...
grafting '/gnu/store/…-cyrus-sasl-2.1.27' -> '/gnu/store/…-cyrus-sasl-2.1.27'...
successfully built /gnu/store/…-cyrus-sasl-2.1.27.drv
applying 1 graft for /gnu/store/…-libxrender-0.9.10.drv ...
grafting '/gnu/store/…-libxrender-0.9.10' -> '/gnu/store/…-libxrender-0.9.10'...
successfully built /gnu/store/…-libxrender-0.9.10.drv
applying 1 graft for /gnu/store/…-libxt-1.2.0.drv ...
grafting '/gnu/store/…-libxt-1.2.0' -> '/gnu/store/…-libxt-1.2.0'...
successfully built /gnu/store/…-libxt-1.2.0.drv
applying 2 grafts for /gnu/store/…-libxft-2.3.3.drv ...
grafting '/gnu/store/…-libxft-2.3.3' -> '/gnu/store/…-libxft-2.3.3'...
successfully built /gnu/store/…-libxft-2.3.3.drv
applying 3 grafts for /gnu/store/…-libxmu-1.1.3.drv ...
grafting '/gnu/store/…-libxmu-1.1.3' -> '/gnu/store/…-libxmu-1.1.3'...
successfully built /gnu/store/…-libxmu-1.1.3.drv
applying 3 grafts for /gnu/store/…-libxpm-3.5.13.drv ...
grafting '/gnu/store/…-libxpm-3.5.13' -> '/gnu/store/…-libxpm-3.5.13'...
successfully built /gnu/store/…-libxpm-3.5.13.drv
applying 2 grafts for /gnu/store/…-openjpeg-2.3.1.drv ...
grafting '/gnu/store/…-openjpeg-2.3.1' -> '/gnu/store/…-openjpeg-2.3.1'...
successfully built /gnu/store/…-openjpeg-2.3.1.drv
applying 5 grafts for /gnu/store/…-libxaw-1.0.13.drv ...
grafting '/gnu/store/…-libxaw-1.0.13' -> '/gnu/store/…-libxaw-1.0.13'...
successfully built /gnu/store/…-libxaw-1.0.13.drv
applying 1 graft for /gnu/store/…-openldap-2.4.57.drv ...
grafting '/gnu/store/…-openldap-2.4.57' -> '/gnu/store/…-openldap-2.4.57'...
successfully built /gnu/store/…-openldap-2.4.57.drv
applying 1 graft for /gnu/store/…-ruby-2.6.5.drv ...
grafting '/gnu/store/…-ruby-2.6.5' -> '/gnu/store/…-ruby-2.6.5'...
successfully built /gnu/store/…-ruby-2.6.5.drv
applying 2 grafts for /gnu/store/…-curl-7.74.0.drv ...
grafting '/gnu/store/…-curl-7.74.0' -> '/gnu/store/…-curl-7.74.0'...
successfully built /gnu/store/…-curl-7.74.0.drv
applying 2 grafts for /gnu/store/…-tk-8.6.10.drv ...
grafting '/gnu/store/…-tk-8.6.10' -> '/gnu/store/…-tk-8.6.10'...
successfully built /gnu/store/…-tk-8.6.10.drv
applying 3 grafts for /gnu/store/…-python-3.8.2.drv ...
grafting '/gnu/store/…-python-3.8.2' -> '/gnu/store/…-python-3.8.2'...
grafting '/gnu/store/…-python-3.8.2-tk' -> '/gnu/store/…-python-3.8.2-tk'...
successfully built /gnu/store/…-python-3.8.2.drv
applying 3 grafts for /gnu/store/…-python2-2.7.17.drv ...
grafting '/gnu/store/…-python2-2.7.17' -> '/gnu/store/…-python2-2.7.17'...
grafting '/gnu/store/…-python2-2.7.17-tk' -> '/gnu/store/…-python2-2.7.17-tk'...
successfully built /gnu/store/…-python2-2.7.17.drv
applying 2 grafts for /gnu/store/…-glib-2.62.6.drv ...
grafting '/gnu/store/…-glib-2.62.6-bin' -> '/gnu/store/…-glib-2.62.6-bin'...
grafting '/gnu/store/…-glib-2.62.6' -> '/gnu/store/…-glib-2.62.6'...
successfully built /gnu/store/…-glib-2.62.6.drv
applying 4 grafts for /gnu/store/…-cairo-1.16.0.drv ...
grafting '/gnu/store/…-cairo-1.16.0' -> '/gnu/store/…-cairo-1.16.0'...
successfully built /gnu/store/…-cairo-1.16.0.drv
applying 4 grafts for /gnu/store/…-cairo-1.16.0.drv ...
grafting '/gnu/store/…-cairo-1.16.0' -> '/gnu/store/…-cairo-1.16.0'...
successfully built /gnu/store/…-cairo-1.16.0.drv
applying 1 graft for /gnu/store/…-harfbuzz-2.6.4.drv ...
grafting '/gnu/store/…-harfbuzz-2.6.4' -> '/gnu/store/…-harfbuzz-2.6.4'...
successfully built /gnu/store/…-harfbuzz-2.6.4.drv
applying 5 grafts for /gnu/store/…-poppler-0.86.1.drv ...
grafting '/gnu/store/…-poppler-0.86.1' -> '/gnu/store/…-poppler-0.86.1'...
successfully built /gnu/store/…-poppler-0.86.1.drv
applying 6 grafts for /gnu/store/…-pango-1.44.7.drv ...
grafting '/gnu/store/…-pango-1.44.7' -> '/gnu/store/…-pango-1.44.7'...
successfully built /gnu/store/…-pango-1.44.7.drv
applying 13 grafts for /gnu/store/…-texlive-bin-20190410.drv ...
grafting '/gnu/store/…-texlive-bin-20190410' -> '/gnu/store/…-texlive-bin-20190410'...
GC Warning: Repeated allocation of very large block (appr. size 1052672):
        May lead to memory leak and poor performance
GC Warning: Repeated allocation of very large block (appr. size 1052672):
        May lead to memory leak and poor performance
GC Warning: Repeated allocation of very large block (appr. size 1052672):
        May lead to memory leak and poor performance
GC Warning: Repeated allocation of very large block (appr. size 1052672):
        May lead to memory leak and poor performance
GC Warning: Repeated allocation of very large block (appr. size 1052672):
        May lead to memory leak and poor performance
GC Warning: Repeated allocation of very large block (appr. size 1052672):
        May lead to memory leak and poor performance
GC Warning: Repeated allocation of very large block (appr. size 1052672):
        May lead to memory leak and poor performance
GC Warning: Repeated allocation of very large block (appr. size 1052672):
        May lead to memory leak and poor performance
successfully built /gnu/store/…-texlive-bin-20190410.drv
applying 1 graft for /gnu/store/…-texlive-union-51265.drv ...
grafting '/gnu/store/…-texlive-union-51265' -> '/gnu/store/…-texlive-union-51265'...
successfully built /gnu/store/…-texlive-union-51265.drv
applying 14 grafts for /gnu/store/…-r-minimal-4.0.4.drv ...
grafting '/gnu/store/…-r-minimal-4.0.4' -> '/gnu/store/…-r-minimal-4.0.4'...
successfully built /gnu/store/…-r-minimal-4.0.4.drv
applying 1 graft for /gnu/store/…-r-rcpp-1.0.6.drv ...
grafting '/gnu/store/…-r-rcpp-1.0.6' -> '/gnu/store/…-r-rcpp-1.0.6'...
successfully built /gnu/store/…-r-rcpp-1.0.6.drv
applying 2 grafts for /gnu/store/…-r-chemminer-3.42.2.drv ...
grafting '/gnu/store/…-r-chemminer-3.42.2' -> '/gnu/store/…-r-chemminer-3.42.2'...
successfully built /gnu/store/…-r-chemminer-3.42.2.drv
/gnu/store/…-r-chemminer-3.42.2
--8<---------------cut here---------------end--------------->8---


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Examples on why ungrafting is necessary
  2021-03-11 13:16 Examples on why ungrafting is necessary zimoun
@ 2021-03-14 15:49 ` Joshua Branson
  2021-03-14 20:43 ` Leo Famulari
  1 sibling, 0 replies; 3+ messages in thread
From: Joshua Branson @ 2021-03-14 15:49 UTC (permalink / raw)
  To: zimoun; +Cc: Guix Devel, Leo Famulari

zimoun <zimon.toutoune@gmail.com> writes:

> Hi,
>
> Updating the package r-chemminer, it leads to this huge stack of
> grafts.  To be concrete, it is 84 grafts for a “simple” R packages.  On
> my machine, the grafting steps are longer than building (compiling and R
> dance).
>
> We definitively need a way to tackle this.  Maybe when is in frozen
> state, we could spend 2-5 days to tackle as much as graft that we can.
>
> The previous Leo’s initiative is really worth and maybe we should have a
> hackathon or something because my feeling is that more grafts are added
> than removed.

Thanks for sharing!  I didn't realize that grafts were getting that
annoying.  :)
>
> Cheers,
> simon
>
> applying 1 graft for /gnu/store/…-dbus-1.12.16.drv ...
> grafting '/gnu/store/…-dbus-1.12.16' -> '/gnu/store/…-dbus-1.12.16'...
> successfully built /gnu/store/…-dbus-1.12.16.drv
> applying 1 graft for /gnu/store/…-cyrus-sasl-2.1.27.drv ...
> grafting '/gnu/store/…-cyrus-sasl-2.1.27' -> '/gnu/store/…-cyrus-sasl-2.1.27'...
> successfully built /gnu/store/…-cyrus-sasl-2.1.27.drv
> applying 1 graft for /gnu/store/…-libxrender-0.9.10.drv ...
> grafting '/gnu/store/…-libxrender-0.9.10' -> '/gnu/store/…-libxrender-0.9.10'...
> successfully built /gnu/store/…-libxrender-0.9.10.drv
> applying 1 graft for /gnu/store/…-libxt-1.2.0.drv ...
> grafting '/gnu/store/…-libxt-1.2.0' -> '/gnu/store/…-libxt-1.2.0'...
> successfully built /gnu/store/…-libxt-1.2.0.drv
> applying 2 grafts for /gnu/store/…-libxft-2.3.3.drv ...
> grafting '/gnu/store/…-libxft-2.3.3' -> '/gnu/store/…-libxft-2.3.3'...
> successfully built /gnu/store/…-libxft-2.3.3.drv
> applying 3 grafts for /gnu/store/…-libxmu-1.1.3.drv ...
> grafting '/gnu/store/…-libxmu-1.1.3' -> '/gnu/store/…-libxmu-1.1.3'...
> successfully built /gnu/store/…-libxmu-1.1.3.drv
> applying 3 grafts for /gnu/store/…-libxpm-3.5.13.drv ...
> grafting '/gnu/store/…-libxpm-3.5.13' -> '/gnu/store/…-libxpm-3.5.13'...
> successfully built /gnu/store/…-libxpm-3.5.13.drv
> applying 2 grafts for /gnu/store/…-openjpeg-2.3.1.drv ...
> grafting '/gnu/store/…-openjpeg-2.3.1' -> '/gnu/store/…-openjpeg-2.3.1'...
> successfully built /gnu/store/…-openjpeg-2.3.1.drv
> applying 5 grafts for /gnu/store/…-libxaw-1.0.13.drv ...
> grafting '/gnu/store/…-libxaw-1.0.13' -> '/gnu/store/…-libxaw-1.0.13'...
> successfully built /gnu/store/…-libxaw-1.0.13.drv
> applying 1 graft for /gnu/store/…-openldap-2.4.57.drv ...
> grafting '/gnu/store/…-openldap-2.4.57' -> '/gnu/store/…-openldap-2.4.57'...
> successfully built /gnu/store/…-openldap-2.4.57.drv
> applying 1 graft for /gnu/store/…-ruby-2.6.5.drv ...
> grafting '/gnu/store/…-ruby-2.6.5' -> '/gnu/store/…-ruby-2.6.5'...
> successfully built /gnu/store/…-ruby-2.6.5.drv
> applying 2 grafts for /gnu/store/…-curl-7.74.0.drv ...
> grafting '/gnu/store/…-curl-7.74.0' -> '/gnu/store/…-curl-7.74.0'...
> successfully built /gnu/store/…-curl-7.74.0.drv
> applying 2 grafts for /gnu/store/…-tk-8.6.10.drv ...
> grafting '/gnu/store/…-tk-8.6.10' -> '/gnu/store/…-tk-8.6.10'...
> successfully built /gnu/store/…-tk-8.6.10.drv
> applying 3 grafts for /gnu/store/…-python-3.8.2.drv ...
> grafting '/gnu/store/…-python-3.8.2' -> '/gnu/store/…-python-3.8.2'...
> grafting '/gnu/store/…-python-3.8.2-tk' -> '/gnu/store/…-python-3.8.2-tk'...
> successfully built /gnu/store/…-python-3.8.2.drv
> applying 3 grafts for /gnu/store/…-python2-2.7.17.drv ...
> grafting '/gnu/store/…-python2-2.7.17' -> '/gnu/store/…-python2-2.7.17'...
> grafting '/gnu/store/…-python2-2.7.17-tk' -> '/gnu/store/…-python2-2.7.17-tk'...
> successfully built /gnu/store/…-python2-2.7.17.drv
> applying 2 grafts for /gnu/store/…-glib-2.62.6.drv ...
> grafting '/gnu/store/…-glib-2.62.6-bin' -> '/gnu/store/…-glib-2.62.6-bin'...
> grafting '/gnu/store/…-glib-2.62.6' -> '/gnu/store/…-glib-2.62.6'...
> successfully built /gnu/store/…-glib-2.62.6.drv
> applying 4 grafts for /gnu/store/…-cairo-1.16.0.drv ...
> grafting '/gnu/store/…-cairo-1.16.0' -> '/gnu/store/…-cairo-1.16.0'...
> successfully built /gnu/store/…-cairo-1.16.0.drv
> applying 4 grafts for /gnu/store/…-cairo-1.16.0.drv ...
> grafting '/gnu/store/…-cairo-1.16.0' -> '/gnu/store/…-cairo-1.16.0'...
> successfully built /gnu/store/…-cairo-1.16.0.drv
> applying 1 graft for /gnu/store/…-harfbuzz-2.6.4.drv ...
> grafting '/gnu/store/…-harfbuzz-2.6.4' -> '/gnu/store/…-harfbuzz-2.6.4'...
> successfully built /gnu/store/…-harfbuzz-2.6.4.drv
> applying 5 grafts for /gnu/store/…-poppler-0.86.1.drv ...
> grafting '/gnu/store/…-poppler-0.86.1' -> '/gnu/store/…-poppler-0.86.1'...
> successfully built /gnu/store/…-poppler-0.86.1.drv
> applying 6 grafts for /gnu/store/…-pango-1.44.7.drv ...
> grafting '/gnu/store/…-pango-1.44.7' -> '/gnu/store/…-pango-1.44.7'...
> successfully built /gnu/store/…-pango-1.44.7.drv
> applying 13 grafts for /gnu/store/…-texlive-bin-20190410.drv ...
> grafting '/gnu/store/…-texlive-bin-20190410' -> '/gnu/store/…-texlive-bin-20190410'...
> GC Warning: Repeated allocation of very large block (appr. size 1052672):
>         May lead to memory leak and poor performance
> GC Warning: Repeated allocation of very large block (appr. size 1052672):
>         May lead to memory leak and poor performance
> GC Warning: Repeated allocation of very large block (appr. size 1052672):
>         May lead to memory leak and poor performance
> GC Warning: Repeated allocation of very large block (appr. size 1052672):
>         May lead to memory leak and poor performance
> GC Warning: Repeated allocation of very large block (appr. size 1052672):
>         May lead to memory leak and poor performance
> GC Warning: Repeated allocation of very large block (appr. size 1052672):
>         May lead to memory leak and poor performance
> GC Warning: Repeated allocation of very large block (appr. size 1052672):
>         May lead to memory leak and poor performance
> GC Warning: Repeated allocation of very large block (appr. size 1052672):
>         May lead to memory leak and poor performance
> successfully built /gnu/store/…-texlive-bin-20190410.drv
> applying 1 graft for /gnu/store/…-texlive-union-51265.drv ...
> grafting '/gnu/store/…-texlive-union-51265' -> '/gnu/store/…-texlive-union-51265'...
> successfully built /gnu/store/…-texlive-union-51265.drv
> applying 14 grafts for /gnu/store/…-r-minimal-4.0.4.drv ...
> grafting '/gnu/store/…-r-minimal-4.0.4' -> '/gnu/store/…-r-minimal-4.0.4'...
> successfully built /gnu/store/…-r-minimal-4.0.4.drv
> applying 1 graft for /gnu/store/…-r-rcpp-1.0.6.drv ...
> grafting '/gnu/store/…-r-rcpp-1.0.6' -> '/gnu/store/…-r-rcpp-1.0.6'...
> successfully built /gnu/store/…-r-rcpp-1.0.6.drv
> applying 2 grafts for /gnu/store/…-r-chemminer-3.42.2.drv ...
> grafting '/gnu/store/…-r-chemminer-3.42.2' -> '/gnu/store/…-r-chemminer-3.42.2'...
> successfully built /gnu/store/…-r-chemminer-3.42.2.drv
> /gnu/store/…-r-chemminer-3.42.2
>

-- 
Joshua Branson (joshuaBPMan in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar
  


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Examples on why ungrafting is necessary
  2021-03-11 13:16 Examples on why ungrafting is necessary zimoun
  2021-03-14 15:49 ` Joshua Branson
@ 2021-03-14 20:43 ` Leo Famulari
  1 sibling, 0 replies; 3+ messages in thread
From: Leo Famulari @ 2021-03-14 20:43 UTC (permalink / raw)
  To: zimoun; +Cc: Guix Devel

On Thu, Mar 11, 2021 at 02:16:16PM +0100, zimoun wrote:
> Updating the package r-chemminer, it leads to this huge stack of
> grafts.  To be concrete, it is 84 grafts for a “simple” R packages.  On
> my machine, the grafting steps are longer than building (compiling and R
> dance).

The performance of grafting largely corresponds to I/O speed.

> We definitively need a way to tackle this.  Maybe when is in frozen
> state, we could spend 2-5 days to tackle as much as graft that we can.
> 
> The previous Leo’s initiative is really worth and maybe we should have a
> hackathon or something because my feeling is that more grafts are added
> than removed.

To clarify: the number of grafts added is exactly the same number of
grafts that are removed. But, it takes longer to remove them, because
ungrafted requires us to recompile every affected package.


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2021-03-14 20:44 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-03-11 13:16 Examples on why ungrafting is necessary zimoun
2021-03-14 15:49 ` Joshua Branson
2021-03-14 20:43 ` Leo Famulari

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).