Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 53112 - dev-perl/DBI-1.42 (probably earlier versions too) fail build without running syslog
Summary: dev-perl/DBI-1.42 (probably earlier versions too) fail build without running ...
Status: RESOLVED CANTFIX
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Gentoo Perl team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-06-05 23:16 UTC by Mihai Limbasan
Modified: 2004-06-13 07:00 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Mihai Limbasan 2004-06-05 23:16:29 UTC
The 80proxy test for dev-perl/DBI-1.42 (and most probably for earlier versions too) doesn't complete properly without a running syslog daemon ("dubious" result instead of "OK"). That registers as a failed test, causing the build to report failure. The ebuild should ensure that a syslog facility is started, or at least it should output info and wait a few seconds before starting the build so the user has a chance to start syslog.

Reproducible: Always
Steps to Reproduce:
1. /etc/init.d/<syslog> stop
2. emerge dev-perl/DBI
Actual Results:  
Test 80proxy timed out waiting for connection to syslog, returned "dubious" as 
test result, and caused the build to fail.

Expected Results:  
Should have warned the user that syslog is required, or maybe should have 
started the system logger (precedent: sys-libs/glibc-2.3.4.20040605 tries to 
remount / with option noatime to ensure makecheck nonfailure).

syslog-ng as syslogger, but the daemon was NOT running.

Portage 2.0.50-r7 (default-x86-2004.0, gcc-3.4.0, glibc-2.3.3_pre20040420-r0, 2.
6.6-love4)
=================================================================
System uname: 2.6.6-love4 i686 Pentium III (Katmai)
Gentoo Base System version 1.4.15
ccache version 2.3 [enabled]
Autoconf: sys-devel/autoconf-2.59-r4
Automake: sys-devel/automake-1.8.5
ACCEPT_KEYWORDS="x86 ~x86"
AUTOCLEAN="yes"
CFLAGS="-march=pentium3 -mtune=pentium3 -O3 -ftracer -ffast-math 
-fomit-frame-pointer -momit-leaf-frame-pointer -pipe"
CHOST="i686-pc-linux-gnu"
COMPILER="gcc3"
CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config /usr/kde/3.
2/share/config /usr/kde/3/share/config /usr/lib/mozilla/defaults/pref 
/usr/share/config /usr/share/texmf/dvipdfm/config/ 
/usr/share/texmf/dvips/config/ /usr/share/texmf/tex/generic/config/ 
/usr/share/texmf/tex/platex/config/ /usr/share/texmf/xdvi/ /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-march=pentium3 -mtune=pentium3 -O3 -ftracer -ffast-math 
-fomit-frame-pointer -momit-leaf-frame-pointer -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoaddcvs ccache sandbox"
GENTOO_MIRRORS="http://ftp.iasi.roedu.net/mirrors/gentoo.org http://ftp.lug.
ro/gentoo http://gentoo.oregonstate.edu"
MAKEOPTS="-j3"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.de.gentoo.org/gentoo-portage"
USE="X aalib accessibility acl acpi alsa apache2 arts berkdb caps crypt cups 
curl dga doc encode esd expat flac gdbm gif gnome gpm gstreamer gtk gtk2 guile 
imap imlib jack java jbig jpeg kde kerberos lcms ldap libcaca mad maildir 
mailwrapper memlimit mikmod mmx mng motif mpeg mysql ncurses nls nptl odbc 
oggvorbis openal opengl pam perl pic pie png postgres python qt readline ruby 
samba sasl sdl slang slp snmp socks5 speex spell sse ssl svga tcltk tcpd tetex 
tiff truetype unicode wmf x86 xml xml2 xv zlib"
Comment 1 Mihai Limbasan 2004-06-10 22:02:27 UTC
Hm, ran into this again when DBI got pulled in as a dependency of MySQL while chrooted into a new installation (headless server). Relevant output:

>>> emerge (5 of 6) dev-perl/DBI-1.42 to /

<snip>

Manifying blib/man3/DBI::ProfileData.3pm
PERL_DL_NONLAZY=1 /usr/bin/perl "-MExtUtils::Command::MM" "-e" "test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
t/01basics.............ok                                                    
t/02dbidrv.............ok                                                    
t/03handle.............ok                                                    
t/04mods...............ok                                                    
t/05thrclone...........skipped
        all skipped: this linux perl 5.008004 not configured to support iThreads
t/06attrs..............ok                                                    
t/07kids...............ok                                                    
t/08keeperr............ok                                                    
t/09trace..............ok                                                    
t/10examp..............ok                                                    
t/15array..............ok                                                    
t/20meta...............ok                                                    
t/30subclass...........ok                                                    
t/40profile............ok                                                    
t/41prof_dump..........ok                                                    
t/42prof_data..........ok                                                    
t/50dbm................ok                                                    
t/60preparse...........ok                                                    
t/80proxy..............unix dgram connect: No such file or directory at /usr/lib/perl5/vendor_perl/5.8.4/Net/Daemon/Log.pm line 114
no connection to syslog available at /usr/lib/perl5/vendor_perl/5.8.4/Net/Daemon/Log.pm line 114
Server process didn't create a file 'ndtest.prt'. at /usr/lib/perl5/vendor_perl/5.8.4/Net/Daemon/Test.pm line 317.
t/80proxy..............dubious                                               
        Test returned status 2 (wstat 512, 0x200)
DIED. FAILED tests 1-117
        Failed 117/117 tests, 0.00% okay
t/zz_01basics_pp.......   Using DBI::PurePerl (DBI_PUREPERL=2) on i586-linux
t/zz_01basics_pp.......ok                                                    
t/zz_02dbidrv_pp.......ok                                                    
t/zz_03handle_pp.......ok                                                    
t/zz_04mods_pp.........ok                                                    
t/zz_05thrclone_pp.....skipped
        all skipped: this linux perl 5.008004 not configured to support iThreads
t/zz_06attrs_pp........ok                                                    
t/zz_07kids_pp.........skipped
        all skipped: $h->{Kids} attribute not supported for DBI::PurePerl
t/zz_08keeperr_pp......ok                                                    
t/zz_09trace_pp........ok                                                    
t/zz_10examp_pp........ok 34/246 Taint mode switching tests skipped          
t/zz_10examp_pp........ok                                                    
t/zz_15array_pp........ok                                                    
t/zz_20meta_pp.........ok                                                    
t/zz_30subclass_pp.....ok                                                    
t/zz_40profile_pp......skipped
        all skipped: profiling not supported for DBI::PurePerl
t/zz_41prof_dump_pp....skipped
        all skipped: profiling not supported for DBI::PurePerl
t/zz_42prof_data_pp....skipped
        all skipped: profiling not supported for DBI::PurePerl
t/zz_50dbm_pp..........ok                                                    
t/zz_60preparse_pp.....skipped
        all skipped: preparse not supported for DBI::PurePerl
t/zz_80proxy_pp........skipped
        all skipped: DBD::Proxy currently has a problem under DBI::PurePerl
Failed Test Stat Wstat Total Fail  Failed  List of Failed
-------------------------------------------------------------------------------
t/80proxy.t    2   512   117  234 200.00%  1-117
8 tests skipped.
Failed 1/38 test scripts, 97.37% okay. 117/1732 subtests failed, 93.24% okay.
make: *** [test_dynamic] Error 255

!!! ERROR: dev-perl/DBI-1.42 failed.
!!! Function perl-module_src_compile, Line 62, Exitcode 2
!!! test failed


Emerge info for this system (different arch, same gcc/glibc/perl):


Portage 2.0.50-r8 (default-x86-2004.0, gcc-3.4.0, glibc-2.3.4.20040605-r0, 2.6.6-love4)
=================================================================
System uname: 2.6.6-love4 i686 Pentium III (Katmai)
Gentoo Base System version 1.4.16
Autoconf: sys-devel/autoconf-2.59-r4
Automake: sys-devel/automake-1.8.5
ACCEPT_KEYWORDS="x86 ~x86"
AUTOCLEAN="yes"
CFLAGS="-march=pentium-mmx -mtune=k6-2 -O2 -fstack-protector -fweb -frename-registers -ftracer -ffast-math -fomit-frame-pointer -momit-leaf-frame-pointer -pipe"
CHOST="i586-pc-linux-gnu"
COMPILER="gcc3"
CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config /usr/kde/3.2/share/config /usr/kde/3/share/config /usr/lib/mozilla/defaults/pref /usr/share/config /usr/share/texmf/dvipdfm/config/ /usr/share/texmf/dvips/config/ /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ /usr/share/texmf/xdvi/ /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-march=pentium-mmx -mtune=k6-2 -O2 -fstack-protector -fweb -frename-registers -ftracer -ffast-math -fomit-frame-pointer -momit-leaf-frame-pointer -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoaddcvs ccache sandbox"
GENTOO_MIRRORS="http://ftp.iasi.roedu.net/mirrors/gentoo.org http://ftp.lug.ro/gentoo http://gentoo.oregonstate.edu"
MAKEOPTS="-j3"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.de.gentoo.org/gentoo-portage"
USE="acl apache2 berkdb caps crypt cups curl expat gdbm gif hardened imap imlib jbig jpeg kerberos lcms ldap maildir mailwrapper memlimit mmx mng mysql ncurses nptl odbc pam perl pic pie png postgres python readline ruby samba sasl slang slp snmp socks5 spell ssl svga tcpd tiff truetype unicode wmf x86 xml xml2 zlib"
Comment 2 Mihai Limbasan 2004-06-10 22:14:59 UTC
Oh, forgot to mention, the problem is obviously a missing /dev/log Unix domain socket (either because no system logger was running, as in the original bug report, or because there wasn't any /dev/log inside the chroot jail, as in the second one). Don't know if this also affects LiveCD installations.
Modifying syslog-ng.conf, adding
       unix-stream("/mnt/gentoo/dev/log");
to the source src declaration, and restarting it obviously creates the socket at the correct (in my case) place inside the chroot, and DBI emerges without a hitch. Just remember to revert to the original syslog-ng.conf after unmounting /mnt/gentoo. See the man page for your logger daemon to see how to convince it to create an additional socket where you want it to.
Comment 3 Michael Cummings (RETIRED) gentoo-dev 2004-06-13 07:00:37 UTC
The DBI/DBD modules fall into the same category as the network and *tk* modules - tests shouldn't really be enabled given the disparity of platforms out there. We can't force a user to have syslog just because of one test, just like we can't force them to have a particular database because they want that module in perl - maybe the machine they are connecting to is remote, for instance.

Bah, sorry for the rant, the short of it is I am disabling the test in 1.42 as this is a case where the well intention of the test is lost when the environment may not need to be up to par in the first place.