[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#560058: [buildd-tools-devel] Bug#560058: quinn-diff: should support architecture wildcards

On Thursday 04 February 2010 16:33:12 Philipp Kern wrote:
> On Thu, Feb 04, 2010 at 07:19:23PM +0100, Philipp Kern wrote:
> > I'm ok with using a Perl interpreter to determine from
> > Packages-arch-specific (which is small compared to a Packages file) if an
> > architecture is in a wildcarded list.  However in the critical path it
> > feels wrong.  Did you already measure the impact of your patch?  Just
> > take one Packages file from unstable and a Sources file and run
> > quinn-diff with and without your patch.
> Ok, it doesn't look that much slower.  I produced a preliminary patch on
>  [1], based on yours.  It's in the dpkg-perl branch of the repository.

I've attached a log showing different running times for quinn-diff with and 
without the dpkg-perl support on my system. Top of the log shows running time 
for current quinn-diff from unstable. Bottom of log shows quinn-diff built with 
dpkg-perl switch turned on in configure.

I used a current Packages file for amd64 main, a corresponding Sources file, and 
Packages-arch-specific from https://buildd.debian.org/quinn-diff/Packages-arch-
specific. Yes, there is a performance penalty, but it's not too bad I think.

> We have some cases where we don't want that behaviour, see the patches to
> parse_sources.c for that.

Ok. Makes sense.

> Furthermore it revealed that it used to check
>  ":" against the current architecture, so we managed to find yet another
>  bug through this change (see [2]).  ;-)

Heh, yeah I did see that. Didn't occur to me that I should've reported it.

By the way, I would like to report that building quinn-diff from the dpkg-perl 
branch without the --with-dpkg-perl switch causes quinn-diff to segfault.

> Kind regards,
> Philipp Kern
> [1]
>  http://git.debian.org/?p=buildd-tools/quinn-diff.git;a=commitdiff;h=0a2759
> 4680caf998a31cc89da9767d45292d2de4 [2]
>  http://git.debian.org/?p=buildd-tools/quinn-diff.git;a=commitdiff;h=41ee93
> c0616023fb79f5b1961560ecbac402c418

$ time quinn-diff -a Packages-arch-specific -p Packages-amd64 -s Sources
real    0m0.275s
user    0m0.236s
sys     0m0.040s

real    0m0.265s
user    0m0.244s
sys     0m0.020s

real    0m0.270s
user    0m0.228s
sys     0m0.040s

real    0m0.268s
user    0m0.224s
sys     0m0.040s

real    0m0.274s
user    0m0.248s
sys     0m0.032s

$ time quinn-diff/src/quinn-diff -a Packages-arch-specific -p Packages-amd64 -s Sources
real    0m0.699s
user    0m0.660s
sys     0m0.032s

real    0m0.705s
user    0m0.660s
sys     0m0.048s

real    0m0.697s
user    0m0.660s
sys     0m0.036s

real    0m0.709s
user    0m0.660s
sys     0m0.048s

real    0m0.699s
user    0m0.636s
sys     0m0.056s

Reply to: