[Dbix-class] Why is prefetch so slow?
Jon Schutz
jon+dbix at youramigo.com
Thu Oct 18 06:33:24 GMT 2007
On Wed, 2007-10-17 at 16:19 +0100, Nigel Metheringham wrote:
> Jon,
>
> You should look at RH bug #196836 for information on the Red Hat
> perl bug that causes this.
>
> https://bugzilla.redhat.com/show_bug.cgi?id=196836
>
Interesting, well found.
As background for those who missed yesterday's IRC discussion, it was
identified that the original slow-down problem was specific to CentOS 5
standard perl-5.8.8-10 RPM (and presumably all other distributions using
the same).
According to the bug report above, the problem should be fixed in RPM
perl-5.8.8-22 and later, so I compiled and installed perl-5.8.8-24 and
re-ran Nigel's benchmark. The results show that the patched patched
version in 5.8.8-24 is still about 2-4 as slow with/without my patch to
ResultSourceHandle. This compares against 8-12 times slower with
perl-5.8.8-10.
Summary:
effect of ResultSourceHandle patch
perl-5.8.8-10 RPM 8-12 times faster
perl-5.8.8-24 RPM 2-4 times faster
perl-5.8.8 compiled from source no difference
perl-5.9.5 compiled from source no difference
Bring on 5.10, I guess.
Using the code put up by Brandon to check for the bug on various
systems, here are the results:
O/S Perl Version has_bug bad_overload_performance
Debian 5.6.1 Y N
FreeBSD 5.4-9 5.8.8 Y N
CentOS 4 5.8.8-4 RPM Y N
CentOS 5 5.8.8-10 RPM N Y
CentOS 5 5.8.8-24 RPM N Y
CentOS 5 5.8.8 source Y N
CentOS 5 5.9.5 source N N
which is consistent with the benchmarks, at least w.r.t. overload
performance.
--
Jon
More information about the DBIx-Class
mailing list