Package: lsb-release Version: 4.1+Debian4 Severity: normal Tags: patch Dear Maintainer,
To reproduce the problem, simply run: $ /usr/bin/time /usr/bin/lsb_release -sd Debian GNU/ testing (wheezy) 1.84user 0.05system 0:01.91elapsed 99%CPU (0avgtext+0avgdata 137200maxresident)k 0inputs+0outputs (0major+14470minor)pagefaults 0swaps This is on a hot cache with a 2.6GHz Core 2. On a cold cache this can take upi to 4 seconds. What makes it so slow is that it systematically calls 'apt-cache policy': $ LANG=C /usr/bin/time apt-cache policy >/dev/null 1.72user 0.07system 0:01.80elapsed 99%CPU (0avgtext+0avgdata 137200maxresident)k 0inputs+0outputs (0major+11680minor)pagefaults 0swaps The patch below works around this issue for non-testing Debian versions by not calling guess_release_from_apt() if we don't need to. This gets the execution time down to 0.03 seconds. Unfortunately this does not help me since I'm running Debian Testing :-( --- /usr/share/pyshared/lsb_release.py.orig 2012-05-23 11:59:21.909934400 +0200 +++ /usr/share/pyshared/lsb_release.py 2012-05-23 12:12:59.281968570 +0200 @@ -270,8 +270,10 @@ def guess_debian_release(): # This is slightly faster and less error prone in case the user # has an entry in his /etc/apt/sources.list but has not actually # upgraded the system. - rinfo = guess_release_from_apt() - if rinfo and not distinfo.get('CODENAME'): + rinfo = None + if not distinfo.get('CODENAME'): + rinfo = guess_release_from_apt() + if rinfo: release = rinfo.get('version') # Special case Debian-Ports as their Release file has 'version': '1.0' -- Package-specific info: lsb_release output -*- -*- -*- -*- -*- LSB Version: core-2.0-amd64:core-2.0-noarch:core-3.0-amd64:core-3.0-noarch:core-3.1-amd64:core-3.1-noarch:core-3.2-amd64:core-3.2-noarch:core-4.0-amd64:core-4.0-noarch:core-4.1-amd64:core-4.1-noarch:security-4.0-amd64:security-4.0-noarch:security-4.1-amd64:security-4.1-noarch Distributor ID: Debian Description: Debian GNU/Linux testing (wheezy) Release: testing Codename: wheezy -*- -*- -*- -*- -*- Apt policy -*- -*- -*- -*- -*- Package files: 100 /var/lib/dpkg/status release a=now 500 http://dl.google.com/linux/earth/deb/ stable/main amd64 Packages release v=1.0,o=Google, Inc.,a=stable,n=stable,l=Google,c=main origin dl.google.com 500 http://dl.google.com/linux/chrome/deb/ stable/main amd64 Packages release v=1.0,o=Google, Inc.,a=stable,n=stable,l=Google,c=main origin dl.google.com 500 http://mirror.home-dn.net/debian-multimedia/ testing/main amd64 Packages release v=None,o=Unofficial Multimedia Packages,a=testing,n=wheezy,l=Unofficial Multimedia Packages,c=main origin mirror.home-dn.net 500 http://ftp.fr.debian.org/debian/ testing/non-free Translation-en 500 http://ftp.fr.debian.org/debian/ testing/main Translation-fr 500 http://ftp.fr.debian.org/debian/ testing/main Translation-en 500 http://ftp.fr.debian.org/debian/ testing/contrib Translation-en 500 http://ftp.fr.debian.org/debian/ testing/non-free amd64 Packages release o=Debian,a=testing,n=wheezy,l=Debian,c=non-free origin ftp.fr.debian.org 500 http://ftp.fr.debian.org/debian/ testing/contrib amd64 Packages release o=Debian,a=testing,n=wheezy,l=Debian,c=contrib origin ftp.fr.debian.org 500 http://ftp.fr.debian.org/debian/ testing/main amd64 Packages release o=Debian,a=testing,n=wheezy,l=Debian,c=main origin ftp.fr.debian.org 500 http://security.debian.org/ stable/updates/non-free amd64 Packages release v=6.0,o=Debian,a=stable,n=squeeze,l=Debian-Security,c=non-free origin security.debian.org 500 http://security.debian.org/ stable/updates/contrib amd64 Packages release v=6.0,o=Debian,a=stable,n=squeeze,l=Debian-Security,c=contrib origin security.debian.org 500 http://security.debian.org/ stable/updates/main amd64 Packages release v=6.0,o=Debian,a=stable,n=squeeze,l=Debian-Security,c=main origin security.debian.org 500 http://ftp.fr.debian.org/debian/ stable/main Translation-fr 500 http://ftp.fr.debian.org/debian/ stable/non-free amd64 Packages release v=6.0.5,o=Debian,a=stable,n=squeeze,l=Debian,c=non-free origin ftp.fr.debian.org 500 http://ftp.fr.debian.org/debian/ stable/contrib amd64 Packages release v=6.0.5,o=Debian,a=stable,n=squeeze,l=Debian,c=contrib origin ftp.fr.debian.org 500 http://ftp.fr.debian.org/debian/ stable/main amd64 Packages release v=6.0.5,o=Debian,a=stable,n=squeeze,l=Debian,c=main origin ftp.fr.debian.org Pinned packages: xserver-xorg-input-acecad -> (not found) xserver-xorg-driver-sisusb -> (not found) xserver-xorg-driver-s3 -> (not found) xserver-xorg-video-i740 -> (not found) xserver-xorg-video-i810 -> (not found) xserver-xorg-video-ivtv-dbg -> (not found) xserver-xorg-driver-nv -> (not found) xserver-xorg-video-all -> (not found) xserver-xorg-video-suntcx -> (not found) xserver-xorg-video-apm -> (not found) xserver-xorg-input-evtouch -> (not found) xserver-xorg-video-ark -> (not found) xserver-xorg-video-ati -> (not found) xserver-xfbdev -> (not found) xserver-xorg-driver-dummy -> (not found) xserver-xorg-driver-vesa -> (not found) xserver-xorg-driver-cirrus -> (not found) xserver-xorg-video-radeonhd -> (not found) xserver-xfree86 -> (not found) xserver-xorg-video-openchrome -> (not found) xserver-xorg-input-multitouch -> (not found) xserver-xorg-video-newport -> (not found) xserver-xorg-video-radeon-dbg -> (not found) xserver-xorg-driver-all -> (not found) xserver-xorg-video-s3virge -> (not found) xserver-xorg-video-v4l -> (not found) xserver-xorg-driver-apm -> (not found) xserver-xorg-driver-ark -> (not found) xserver-xorg-video-mga -> (not found) xserver-xorg-video-radeonhd-dbg -> (not found) xserver-xorg-video-chips -> (not found) xserver-xorg-core -> (not found) xserver-xorg-input-mutouch -> (not found) xserver-xorg-video-mach64 -> (not found) xserver-xorg-video-msm -> (not found) xserver-xorg-video-nsc -> (not found) xserver-common -> (not found) xserver-xorg-video-geode -> (not found) xserver-xorg-video-r128-dbg -> (not found) xserver-xorg-video-trident -> (not found) xserver-xorg-video-i810-modesetting -> (not found) xserver-xorg-video-ati-dbg -> (not found) xserver-xorg-video-tga -> (not found) xserver-xorg-video-sis -> (not found) xserver-xorg-video-qxl -> (not found) xserver-xorg-video -> (not found) xserver-xorg-video-2 -> (not found) xserver-xorg-video-4 -> (not found) xserver-xorg-video-5 -> (not found) xserver-xorg-video-6 -> (not found) xserver-xorg-video-vga -> (not found) xserver-xorg-driver-mga -> (not found) xserver-xorg-video-via -> (not found) xserver-xorg-video-cyrix -> (not found) xserver-xorg-video-dummy -> (not found) xserver-xorg-video-1.0 -> (not found) xserver-xorg-video-1.9 -> (not found) xserver-xorg-video-siliconmotion -> (not found) xserver-xorg-input-vmmouse -> (not found) xserver-xorg-video-savage -> (not found) xserver-xorg-core-no-multiarch -> (not found) xserver-xorg-driver-tga -> (not found) xserver-xorg-driver-sis -> (not found) xserver-xorg-video-tdfx -> (not found) xserver-xorg-video-openchrome-dbg -> (not found) xserver-xorg-driver-glint -> (not found) xserver-xorg-video-qxl-dbg -> (not found) xserver-xorg-video-imstt -> (not found) xserver-xorg-input-2 -> (not found) xserver-xorg-input-4 -> (not found) xserver-xorg-driver-fbdev -> (not found) xserver-xorg-input-7 -> (not found) xserver-xorg-video-msm-dbg -> (not found) xserver-xorg-video-nvidia -> (not found) xserver-xorg-input-elographics -> (not found) xserver-xorg-video-intel -> (not found) xserver-xorg-driver-rendition -> (not found) xserver-xorg-input-all -> (not found) xserver-xorg-video-vmware -> (not found) xserver-xorg-video-r128 -> (not found) xserver-xorg-video-glamo -> (not found) xserver-xorg-input-evdev -> (not found) xserver-xorg-driver-i128 -> (not found) xserver-xorg-video-vesa -> (not found) xserver-xorg-input-joystick-dev -> (not found) xserver-xorg-driver-siliconmotion -> (not found) xserver-xorg-video-suncg14 -> (not found) xserver-xorg-input-kbd -> (not found) xserver-xorg-driver-s3virge -> (not found) xserver-xorg-driver-savage -> (not found) xserver-xorg-video-glide -> (not found) xserver-xorg-driver-neomagic -> (not found) xserver-xorg-driver-i740 -> (not found) xserver-xorg-driver-i810 -> (not found) xserver-xorg-video-s3 -> (not found) xserver-xorg -> (not found) xserver-xorg-video-glint -> (not found) xserver-xorg-dev -> (not found) xserver-xorg-video-nvidia-any -> (not found) xserver-xorg-input-void -> (not found) xserver-xorg-video-nv -> (not found) xserver-xorg-driver-trident -> (not found) xserver-xorg-driver-tseng -> (not found) xserver-xorg-video-voodoo -> (not found) xserver-xorg-video-fbdev -> (not found) xserver-xorg-input-wacom -> (not found) xserver-xorg-video-nouveau -> (not found) xserver-xorg-video-intel-modesetting -> (not found) xserver-xorg-input-aiptek -> (not found) xserver-xorg-input-penmount -> (not found) xserver-xorg-video-nouveau-dbg -> (not found) xserver-xorg-video-neomagic -> (not found) xserver-xorg-driver-vmware -> (not found) xserver-xephyr -> (not found) xserver-xorg-input-mouse -> (not found) xserver-xorg-input-2.1 -> (not found) xserver-xorg-core-dbg -> (not found) xserver-xorg-input-mtrack -> (not found) xserver-xorg-input-synaptics-dev -> (not found) xserver-xorg-video-mach64-dbg -> (not found) xserver-xorg-video-sisusb -> (not found) xserver-xorg-video-riva128 -> (not found) xserver-xspice -> (not found) xserver-xorg-video-suncg3 -> (not found) xserver-xorg-video-suncg6 -> (not found) xserver-xorg-driver-voodoo -> (not found) xserver-xorg-video-tseng -> (not found) xserver-xorg-video-geode-dbg -> (not found) xserver-xorg-video-radeon -> (not found) xserver-xorg-video-sunbw2 -> (not found) xserver-xorg-video-cirrus -> (not found) xserver-xorg-input -> (not found) xserver-xorg-video-omapfb -> (not found) xserver-xorg-video-sunffb -> (not found) xserver-xorg-video-intel-dbg -> (not found) xserver-xorg-input-joystick -> (not found) xserver-xorg-input-evdev-dev -> (not found) xserver-xorg-input-tslib -> (not found) xserver-xorg-video-omap3 -> (not found) xserver-xorg-driver-tdfx -> (not found) xserver-xorg-input-synaptics -> (not found) xserver-xorg-video-rendition -> (not found) xserver-xorg-video-i128 -> (not found) xserver-xorg-driver-chips -> (not found) xserver-xorg-video-sunleo -> (not found) xserver-xorg-video-ivtv -> (not found) -*- -*- -*- -*- -*- sources.list -*- -*- -*- -*- -*- deb http://ftp.fr.debian.org/debian stable main contrib non-free deb http://security.debian.org/ stable/updates main contrib non-free deb-src http://ftp.fr.debian.org/debian stable main contrib non-free deb-src http://security.debian.org/ stable/updates main contrib non-free deb http://ftp.fr.debian.org/debian testing main contrib non-free deb-src http://ftp.fr.debian.org/debian testing main contrib non-free deb http://mirror.home-dn.net/debian-multimedia testing main deb-src http://mirror.home-dn.net/debian-multimedia testing main -*- -*- -*- -*- -*- /etc/lsb_release -*- -*- -*- -*- -*- - none -- System Information: Debian Release: wheezy/sid APT prefers testing APT policy: (500, 'testing'), (500, 'stable') Architecture: amd64 (x86_64) Kernel: Linux 3.2.0-2-amd64 (SMP w/4 CPU cores) Locale: LANG=fr_FR.utf8, LC_CTYPE=fr_FR.utf8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Versions of packages lsb-release depends on: ii python 2.7.2-10 ii python2.6 2.6.7-4 ii python2.7 2.7.3~rc2-2.1 Versions of packages lsb-release recommends: ii apt 0.9.3 Versions of packages lsb-release suggests: pn lsb <none> -- no debconf information -- debsums errors found: debsums: changed file /usr/share/pyshared/lsb_release.py (from lsb-release package) -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org