From: Maxim Cournoyer <maxim.cournoyer@gmail.com>
To: myglc2 <myglc2@gmail.com>
Cc: guix-devel <guix-devel@gnu.org>
Subject: Re: 04/06: profiles: Generate database file for man pages.
Date: Sat, 15 Apr 2017 09:25:10 +0900 [thread overview]
Message-ID: <87a87ibjq1.fsf@gmail.com> (raw)
In-Reply-To: <864lxxghmm.fsf@gmail.com> (myglc2@gmail.com's message of "Sun, 09 Apr 2017 21:45:37 -0400")
[-- Attachment #1: Type: text/plain, Size: 3573 bytes --]
Hello myglc2,
myglc2 <myglc2@gmail.com> writes:
> On 04/10/2017 at 10:22 Maxim Cournoyer writes:
>
>> Hi myglc2!
>>
>> On Mon, Apr 10, 2017 at 2:28 AM, myglc2 <myglc2@gmail.com> wrote:
>>>
>>> On 04/05/2017 at 16:56 Ludovic Courtès writes:
>>>
>>> > civodul pushed a commit to branch master
>>> > in repository guix.
>>> >
>>> > commit a0b87ef8ec7735aa42cf35d380e9cff04f3236f3
>>> > Author: Maxim Cournoyer <maxim.cournoyer@gmail.com>
>>> > Date: Wed Apr 5 01:09:22 2017 -0700
>>> [...]
>>>
>>> So now q'guix package -m' produces messages like ...
>>>
>>> guix package -m g1.scm
>>> installing new manifest from 'g1.scm' with 22 entries
>>> substitute: updating list of substitutes from 'https://mirror.hydra.gnu.org'... 100.0%
>>> The following derivations will be built:
>>> /gnu/store/smyjh63avay2gb6yq47h3hrlyxfrsajp-profile.drv
>>> /gnu/store/ygp7n87177fngqqpb5l5bkkba5cawcvh-gtk-icon-themes.drv
>>> /gnu/store/wrad8m1vhck9bb7dzqqlxb03rq1ifsm8-gtk-im-modules.drv
>>> /gnu/store/qv12155lx8y195my98970mmfawqpnrcs-info-dir.drv
>>> /gnu/store/ndiq7ccmi32rlxdyf52f506jil0zn9p0-ca-certificate-bundle.drv
>>> /gnu/store/90gzasiixp9np5m4nn28vbfqd1zd5azq-fonts-dir.drv
>>> /gnu/store/3l8kl1b438qr3yk2qca4pzvlpv04q7rc-xdg-mime-database.drv
>>> /gnu/store/2brridy714shmik1zksysik36kn2iwsf-manual-database.drv
>>> creating manual page database for 23 packages...
>>> 22 packages in profile
>>> g1@g1 ~/src$
>>>
>>> And... watching this, it seems like a long time between ...
>>>
>>> creating manual page database for 23 packages...
>>>
>>> ... and ...
>>>
>>> 22 packages in profile
>>>
>>> Does it really take this long? If not, can we close the message ...
>>
>> FWIR it is CPU bound, so your mileage will vary; in my case on an old
>> low-power laptop it can take a few seconds for ~65 packages.
>
> It is taking more like 50 seconds on my 3.4 Ghz server for 33 packages.
>
>> I wonder why the odd package count mismatch (23 vs 22) ?
>
> That's my fault. I cut and pasted from two different runs. SORRY! ;-)
>
OK! No problem; thanks for clarifying it!
>> I don't recall observing this while testing (maybe it only happens
>> when using the -m option) ?
>
> No, I get the same effect w/ 'guix package -r foo.
50 seconds for 33 packages on such a powerful machine seems abnormal,
unless you have a specific package(s) which would install an unusually
large amount of manual pages (which would take more time to be indexed).
Ludovic had a way to time the generation of the manual-database
derivation; he was using something like [0]:
--8<---------------cut here---------------start------------->8---
time guix build --check /gnu/store/rkri628apz2a2i2jvav11ylv2736fvv3-manual-database.drv
--8<---------------cut here---------------end--------------->8---
Notice that you need the derivation (.drv) of manual-database rather
than the store item ending by manual-database. Unfortunately I'm not
aware of how we can easily find the derivation of the corresponding
manual-database store item used by the profile (as can be found by: guix
gc -R $(realpath $HOME/.guix-profile) | grep manual-database).
Maybe Ludovic can enlight us?
If you are interested in digging into this further, you could enable
debug output for the man-db command used by manual-database profile hook
defined in (guix profiles) by replacing the "--quiet" option by
--debug. This way you'd see everything man-db might be complaining about.
[0] https://lists.gnu.org/archive/html/guix-devel/2017-03/msg00847.html
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 832 bytes --]
next prev parent reply other threads:[~2017-04-15 0:25 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20170405205638.12336.78854@vcs0.savannah.gnu.org>
[not found] ` <20170405205640.15AE6210A4@vcs0.savannah.gnu.org>
2017-04-08 19:29 ` 04/06: profiles: Generate database file for man pages Leo Famulari
2017-04-10 1:00 ` Maxim Cournoyer
2017-04-09 17:28 ` myglc2
2017-04-10 1:22 ` Maxim Cournoyer
2017-04-10 1:45 ` myglc2
2017-04-15 0:25 ` Maxim Cournoyer [this message]
2017-04-20 9:29 ` Performance of the man page database generation Ludovic Courtès
2017-05-14 6:18 ` Maxim Cournoyer
2017-05-14 15:31 ` myglc2
2017-05-15 16:23 ` bug#26942: [PATCH] Add Add elapsed time to manual-database hook to output message (was: Performance of the man page database generation) Maxim Cournoyer
2017-05-16 21:12 ` bug#26942: [PATCH] Add Add elapsed time to manual-database hook to output message Ludovic Courtès
2017-05-30 21:29 ` Ricardo Wurmus
2017-05-16 8:21 ` Performance of the man page database generation Ludovic Courtès
2017-05-16 17:24 ` Maxim Cournoyer
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87a87ibjq1.fsf@gmail.com \
--to=maxim.cournoyer@gmail.com \
--cc=guix-devel@gnu.org \
--cc=myglc2@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/guix.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.