Gentoo Archives: gentoo-portage-dev

From: Zac Medico <zmedico@g.o>
To: gentoo-portage-dev@l.g.o
Subject: Re: [gentoo-portage-dev] emerge getting slower
Date: Mon, 21 Dec 2015 20:36:44
Message-Id: 567862D6.7030103@gentoo.org
In Reply to: [gentoo-portage-dev] emerge getting slower by Joakim Tjernlund
1 On 12/21/2015 12:24 PM, Joakim Tjernlund wrote:
2 > Lately it feels like emerge has been getting unusual slow to calculate dependencies.
3 > I did a strace while emerge was running and noticed a lot of:
4 >
5 > stat64("/usr/portage/profiles/base/profile.bashrc", {st_mode=S_IFREG|0644, st_size=183, ...}) = 0
6 > stat64("/usr/portage/profiles/default/linux/profile.bashrc", 0xbfbb02d0) = -1 ENOENT (No such file or directory)
7 > stat64("/usr/portage/profiles/arch/base/profile.bashrc", 0xbfbb02d0) = -1 ENOENT (No such file or directory)
8 > stat64("/usr/portage/profiles/arch/powerpc/profile.bashrc", 0xbfbb02d0) = -1 ENOENT (No such file or directory)
9 > stat64("/usr/portage/profiles/default/linux/powerpc/profile.bashrc", 0xbfbb02d0) = -1 ENOENT (No such file or directory)
10 > stat64("/usr/portage/profiles/arch/base/profile.bashrc", 0xbfbb02d0) = -1 ENOENT (No such file or directory)
11 > stat64("/usr/portage/profiles/arch/powerpc/profile.bashrc", 0xbfbb02d0) = -1 ENOENT (No such file or directory)
12 > stat64("/usr/portage/profiles/arch/powerpc/ppc32/profile.bashrc", 0xbfbb02d0) = -1 ENOENT (No such file or directory)
13 > stat64("/usr/portage/profiles/default/linux/powerpc/ppc32/profile.bashrc", 0xbfbb02d0) = -1 ENOENT (No such file or directory)
14 > stat64("/usr/portage/profiles/releases/profile.bashrc", 0xbfbb02d0) = -1 ENOENT (No such file or directory)
15 > stat64("/usr/portage/profiles/releases/13.0/profile.bashrc", 0xbfbb02d0) = -1 ENOENT (No such file or directory)
16 > stat64("/usr/portage/profiles/default/linux/powerpc/ppc32/13.0/profile.bashrc", 0xbfbb02d0) = -1 ENOENT (No such file or directory)
17 > stat64("/usr/local/portage/tmv3-target-overlay/profiles/cusfpv3/profile.bashrc", {st_mode=S_IFREG|0644, st_size=133, ...}) = 0
18 > stat64("/etc/portage/profile/profile.bashrc", 0xbfbb02d0) = -1 ENOENT (No such file or directory)
19 > access("/usr/local/portage/tmv3-target-overlay/dev-libs/apr/apr-1.5.1-r1.ebuild", R_OK) = -1 ENOENT (No such file or directory)
20 > access("/usr/portage/dev-libs/apr/apr-1.5.1-r1.ebuild", R_OK) = 0
21 > stat64("/usr/portage/dev-libs/apr/apr-1.5.1-r1.ebuild", {st_mode=S_IFREG|0644, st_size=4215, ...}) = 0
22 > open("/usr/portage/metadata/md5-cache/dev-libs/apr-1.5.1-r1", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = 5
23 > fstat64(5, {st_mode=S_IFREG|0644, st_size=1350, ...}) = 0
24 > ioctl(5, TCGETS, 0xbfbb0d88) = -1 ENOTTY (Inappropriate ioctl for device)
25 > fstat64(5, {st_mode=S_IFREG|0644, st_size=1350, ...}) = 0
26 > _llseek(5, 0, [0], SEEK_CUR) = 0
27 > _llseek(5, 0, [0], SEEK_CUR) = 0
28 > _llseek(5, 0, [0], SEEK_CUR) = 0
29 > fstat64(5, {st_mode=S_IFREG|0644, st_size=1350, ...}) = 0
30 > read(5, "DEFINED_PHASES=compile configure"..., 1351) = 1350
31 > read(5, "", 1) = 0
32 > fstat64(5, {st_mode=S_IFREG|0644, st_size=1350, ...}) = 0
33 > close(5) = 0
34 > open("/usr/portage/dev-libs/apr/apr-1.5.1-r1.ebuild", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = 5
35 > fstat64(5, {st_mode=S_IFREG|0644, st_size=4215, ...}) = 0
36 > ioctl(5, TCGETS, 0xbfbb0898) = -1 ENOTTY (Inappropriate ioctl for device)
37 > fstat64(5, {st_mode=S_IFREG|0644, st_size=4215, ...}) = 0
38 > _llseek(5, 0, [0], SEEK_CUR) = 0
39 > read(5, "# Copyright 1999-2015 Gentoo Fou"..., 32768) = 4215
40 > read(5, "", 24576) = 0
41 > read(5, "", 32768) = 0
42 > close(5) = 0
43 > stat64("/usr/portage/profiles/base/profile.bashrc", {st_mode=S_IFREG|0644, st_size=183, ...}) = 0
44 > stat64("/usr/portage/profiles/default/linux/profile.bashrc", 0xbfbb02d0) = -1 ENOENT (No such file or directory)
45 > stat64("/usr/portage/profiles/arch/base/profile.bashrc", 0xbfbb02d0) = -1 ENOENT (No such file or directory)
46 > stat64("/usr/portage/profiles/arch/powerpc/profile.bashrc", 0xbfbb02d0) = -1 ENOENT (No such file or directory)
47 > stat64("/usr/portage/profiles/default/linux/powerpc/profile.bashrc", 0xbfbb02d0) = -1 ENOENT (No such file or directory)
48 > stat64("/usr/portage/profiles/arch/base/profile.bashrc", 0xbfbb02d0) = -1 ENOENT (No such file or directory)
49 > stat64("/usr/portage/profiles/arch/powerpc/profile.bashrc", 0xbfbb02d0) = -1 ENOENT (No such file or directory)
50 > stat64("/usr/portage/profiles/arch/powerpc/ppc32/profile.bashrc", 0xbfbb02d0) = -1 ENOENT (No such file or directory)
51 > stat64("/usr/portage/profiles/default/linux/powerpc/ppc32/profile.bashrc", 0xbfbb02d0) = -1 ENOENT (No such file or directory)
52 > stat64("/usr/portage/profiles/releases/profile.bashrc", 0xbfbb02d0) = -1 ENOENT (No such file or directory)
53 > stat64("/usr/portage/profiles/releases/13.0/profile.bashrc", 0xbfbb02d0) = -1 ENOENT (No such file or directory)
54 > stat64("/usr/portage/profiles/default/linux/powerpc/ppc32/13.0/profile.bashrc", 0xbfbb02d0) = -1 ENOENT (No such file or directory)
55 > stat64("/usr/local/portage/tmv3-target-overlay/profiles/cusfpv3/profile.bashrc", {st_mode=S_IFREG|0644, st_size=133, ...}) = 0
56 > stat64("/etc/portage/profile/profile.bashrc", 0xbfbb02d0) = -1 ENOENT (No such file or directory)
57 > access("/usr/local/portage/tmv3-target-overlay/dev-libs/apr/apr-1.5.0-r2.ebuild", R_OK) = -1 ENOENT (No such file or directory)
58 > access("/usr/portage/dev-libs/apr/apr-1.5.0-r2.ebuild", R_OK) = 0
59 > stat64("/usr/portage/dev-libs/apr/apr-1.5.0-r2.ebuild", {st_mode=S_IFREG|0644, st_size=4047, ...}) = 0
60 > open("/usr/portage/metadata/md5-cache/dev-libs/apr-1.5.0-r2", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = 5
61 > fstat64(5, {st_mode=S_IFREG|0644, st_size=1341, ...}) = 0
62 > ioctl(5, TCGETS, 0xbfbb0d88) = -1 ENOTTY (Inappropriate ioctl for device)
63 >
64 >
65 > Could this constant stating of profile.bashrc account for some slowness?
66
67 The stat calls indicate that it is executing the "depend" phase to
68 generate ebuild metadata cache, which only happens when data in the
69 md5-cache directory is stale for some reason. For example, you can see
70 this happen above for the
71 /usr/portage/metadata/md5-cache/dev-libs/apr-1.5.1-r1 cache entry. An
72 eclass-overrides setting in repos.conf can cause this. Are you using
73 eclass-overrides?
74 --
75 Thanks,
76 Zac

Replies

Subject Author
Re: [gentoo-portage-dev] emerge getting slower Joakim Tjernlund <Joakim.Tjernlund@××××××××.com>