Bug#632293: libxml-libxml-perl: findvalue from is very slow	(regression)
    Vincent Lefevre 
    vincent at vinc17.net
       
    Fri Jul  1 09:26:32 UTC 2011
    
    
  
Package: libxml-libxml-perl
Version: 1.75.ds-1
Severity: important
Tags: upstream
With libxml-libxml-perl 1.70.ds-1+b1, the following testcase took 0.21s
on my machine, while with 1.75.ds-1, it takes 1.59s.
------------------------------------------------------------
#!/usr/bin/env perl
use strict;
use XML::LibXML;
my $file = 'test-huge.xml';
-e $file and die;
open FILE, '>', $file or die;
print FILE "<?xml version=\"1.0\"?>\n<root>\n" or die;
foreach (1..6000)
  { print FILE "<a attr=\"test\"/>\n" or die; }
print FILE "</root>\n" or die;
close FILE or die;
my $parser = XML::LibXML->new();
my $doc = $parser->parse_file($file);
my $n = 0;
foreach my $node ($doc->findnodes('//a'))
  {
    my $v = $node->findvalue('@attr');
    $v eq 'test' or die;
    $n++;
  }
print "$n\n";
unlink $file;
------------------------------------------------------------
I had reported the bug here:
  https://rt.cpan.org/Public/Bug/Display.html?id=69096
(since I first saw it under Mac OS X). According to the discussion,
this regression comes from a "bug fix", but anyway according to the
DOM spec, the previous behavior was not incorrect and the new behavior
can be regarded as incorrect as it probably makes XML::LibXML fail
to conform to DOM (previous XML::LibXML were also incorrect in this
respect).
-- System Information:
Debian Release: wheezy/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (500, 'testing'), (500, 'stable'), (1, 'experimental')
Architecture: amd64 (x86_64)
Kernel: Linux 2.6.39-2-amd64 (SMP w/8 CPU cores)
Locale: LANG=POSIX, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Versions of packages libxml-libxml-perl depends on:
ii  libc6                   2.13-8           Embedded GNU C Library: Shared lib
ii  libxml-namespacesupport 1.09-3           Perl module for supporting simple 
ii  libxml-sax-perl         0.96+dfsg-2      Perl module for using and building
ii  libxml2                 2.7.8.dfsg-3     GNOME XML library
ii  perl                    5.12.4-1         Larry Wall's Practical Extraction 
ii  perl-base [perlapi-5.12 5.12.4-1         minimal Perl system
ii  zlib1g                  1:1.2.3.4.dfsg-3 compression library - runtime
libxml-libxml-perl recommends no packages.
libxml-libxml-perl suggests no packages.
-- no debconf information
    
    
More information about the pkg-perl-maintainers
mailing list