On Fri, Jan 27, 2012 at 08:51:43PM +0200, Peter Eisentraut wrote: > sudo checkrestart reports: > > Found 87 processes using old versions of upgraded files > (57 distinct programs) > ... > > and then gives the details. > > sudo checkrestart -p on the other hand, runs for 10 minutes, prints > hundreds of "dpkg-query: no path found matching pattern" lines (bug > #513189), then finishes with
I've reviewed the use of dpkg-query and, indeed, there were some bugs in the
code:
1.- the call to dpkg-query was run as a subprocess and the script did not
wait for the process to stop, so the file was found *not* to be
a part of a package
2.- the script was making dpkg-query calls for all the instances of a file
even if the file appeared more than once (i.e. a removed library that many
processes were using) which leads it to be *very* CPU intensive if you've
done a full upgrade which includes many core libraries (i.e.
used by many processes)
I have submitted a fix to our GIT repository [1]. Once we confirm that this
fix is OK and does not introduced any new bugs we will upload it.
Regards
Javier
[1]
http://anonscm.debian.org/gitweb/?p=collab-maint/debian-goodies.git;a=blobdiff;f=checkrestart;h=718577a21f6dc49514fe0f6916e821ff075eae76;hp=1e1f9b894b0c93bb47ad9ea4684f051715193c52;hb=2a2b41299b1177f42e7765a44614b03b639c51bc;hpb=85d9cac6e96e4de024ae5083b01274d714f258e8
signature.asc
Description: Digital signature

