Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 107503

Summary: ruby-1.8.x fail tests
Product: Gentoo Linux Reporter: Ylosar Goer <gentoo.bugs.10>
Component: [OLD] DevelopmentAssignee: Gentoo Ruby Team <ruby>
Status: RESOLVED TEST-REQUEST    
Severity: normal CC: DuPol, fmccor, gentoo, henrique.ferreiro, hramrach, ranger, tove
Priority: High    
Version: unspecified   
Hardware: x86   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Attachments: output of make check

Description Ylosar Goer 2005-09-28 06:19:22 UTC
The recently added ruby-1.8.3 fail on make test.

Reproducible: Always
Steps to Reproduce:
1. emerge ruby

Actual Results:  
  1) Failure:
test_cgi(TestWEBrickCGI)
    [./webrick/test_cgi.rb:34:in `test_cgi'
     /var/tmp/portage/ruby-1.8.3/work/ruby-1.8.3/lib/net/http.rb:1049:in `request'
     /var/tmp/portage/ruby-1.8.3/work/ruby-1.8.3/lib/net/http.rb:2104:in
`reading_body'
     /var/tmp/portage/ruby-1.8.3/work/ruby-1.8.3/lib/net/http.rb:1048:in `request'
     /var/tmp/portage/ruby-1.8.3/work/ruby-1.8.3/lib/net/http.rb:1033:in `request'
     /var/tmp/portage/ruby-1.8.3/work/ruby-1.8.3/lib/net/http.rb:545:in `start'
     /var/tmp/portage/ruby-1.8.3/work/ruby-1.8.3/lib/net/http.rb:1031:in `request'
     ./webrick/test_cgi.rb:33:in `test_cgi'
     ./webrick/utils.rb:26:in `start_server'
     ./webrick/utils.rb:34:in `start_httpserver'
     ./webrick/test_cgi.rb:24:in `test_cgi']:
<"/\244\333\244\262/\244\333\244\262"> expected but was
<"<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\">\n<HTML>\n 
<HEAD><TITLE>Bad Request</TITLE></HEAD>\n  <BODY>\n    <H1>Bad Request</H1>\n  
 bad URI `/webrick.cgi/\244\333\244\262/\244\333\244\262'.\n    <HR>\n   
<ADDRESS>\n     WEBrick/1.3.1 (Ruby/1.8.3/2005-09-21) OpenSSL/0.9.7e at\n    
wok.umsar.org:80\n    </ADDRESS>\n  </BODY>\n</HTML>\n">.

1341 tests, 14707 assertions, 1 failures, 0 errors
make: *** [test-all] Error 1

!!! ERROR: dev-lang/ruby-1.8.3 failed.
!!! Function src_test, Line 566, Exitcode 0
!!! Make check failed. See above for details.


Expected Results:  
ruby installed.

# emerge --info
Portage 2.0.51.22-r2 (default-linux/x86/2005.0, gcc-3.4.4, glibc-2.3.5-r1,
2.6.12-gentoo-r10 i686)
=================================================================
System uname: 2.6.12-gentoo-r10 i686 Intel(R) Pentium(R) M processor 1700MHz
Gentoo Base System version 1.6.13
distcc 2.18.3 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [enabled]
ccache version 2.3 [enabled]
dev-lang/python:     2.3.5-r2
sys-apps/sandbox:    1.2.12
sys-devel/autoconf:  2.13, 2.59-r6
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6
sys-devel/binutils:  2.15.92.0.2-r10
sys-devel/libtool:   1.5.18-r1
virtual/os-headers:  2.6.11-r2
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-march=pentium-m -O2 -pipe -fomit-frame-pointer"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config
/usr/lib/X11/xkb /usr/share/config /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-march=pentium-m -O2 -pipe -fomit-frame-pointer"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig buildpkg ccache collision-protect distcc distlocks
fixpackages sandbox sfperms strict test userpriv usersandbox"
GENTOO_MIRRORS="http://mirror.ovh.net/gentoo-distfiles/
http://ftp.belnet.be/mirror/rsync.gentoo.org/gentoo/ http://distfiles.gentoo.or
 http://www.ibiblio.org/pub/Linux/distributions/gentoo/"
LANG="en_US.ISO8859-15"
MAKEOPTS="-j4"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://bee/gentoo-portage"
USE="x86 X acpi alsa apache2 avi bash-completion berkdb bitmap-fonts bzip2 cddb
cdr cjk crypt cups curl eds emboss encode fam ffmpeg fi
efox foomaticdb fortran freetype gdbm gif gnutls gstreamer gtk gtk2 imagemagick
imap imlib java javamail jpeg libg++ libwww mad maildir
mikmod mmx mmxext mp3 mpeg mysql ncurses network nls nptl ogg oggvorbis opengl
pam pcmcia perl pic png postgres python quicktime readli
e real ruby sdl sqlite sse sse2 ssl svg tcltk tcpd test threads tiff truetype
truetype-fonts type1-fonts vorbis win32codecs wmf wxwindo
s xml2 xv xvid zlib video_cards_radeon userland_GNU kernel_linux elibc_glibc"
Unset:  ASFLAGS, CTARGET, LC_ALL, LDFLAGS, LINGUAS
Comment 1 Michal Suchanek 2005-12-13 10:22:42 UTC
It fails even  more tests for me.

Portage 2.0.51.22-r3 (default-linux/x86/2005.1, gcc-3.4.4, glibc-2.3.5-r2,
2.6.14-gentoo-r2-src i686)
=================================================================
System uname: 2.6.14-gentoo-r2-src i686 AMD Athlon(tm) XP 1800+
Gentoo Base System version 1.6.13
ccache version 2.3 [enabled]
dev-lang/python:     2.3.5-r2, 2.4.2
sys-apps/sandbox:    1.2.12
sys-devel/autoconf:  2.13, 2.59-r6
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r1
sys-devel/binutils:  2.16.1
sys-devel/libtool:   1.5.20
virtual/os-headers:  2.6.11-r2
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -march=athlon-xp -mfpmath=sse -fomit-frame-pointer -pipe"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config
/usr/lib/X11/xkb /usr/share/config /usr/sh
are/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="-O2 -march=athlon-xp -mfpmath=sse -fomit-frame-pointer -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig ccache distlocks maketest nostrip sandbox sfperms strict test"
GENTOO_MIRRORS="http://distfiles.gentoo.org
http://distro.ibiblio.org/pub/Linux/distributions/gentoo"
LANG="en_US.UTF-8"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="x86 3dnow X a52 aac acpi aim alsa audiofile avi bcmath berkdb bitmap-fonts
bzip2 caps cdb cdparanoia cdr c
pdflib crypt cscope ctype cups curl dbus dbx debug dedicated dga dio dlloader
doc dri dts dv dvb dvd dvdr dvdre
ad eds emboss encode ethereal examples exif expat fam fbcon ffmpeg flac flash
flatfile foomaticdb fortran ftp g
b gcj gd gdbm ggi gif ginac glut gmp gnutls gphoto2 gpm gstreamer gtk gtk2
gtkhtml hal hardened howl iconv icq 
idn ieee1394 imagemagick imap imlib inifile ipv6 jabber javascript jpeg
kdexdeltas kerberos lcms ldap libg++ li
bwww lm_sensors lua mad maildir matroska matrox mbox mikmod mime ming mmap mmx
mng motif mozilla mp3 mpeg msn n
as ncurses nls nptl nptlonly nsplugin offensive ogg oggvorbis openal opengl osc
oscar oss pam pcntl pcre pdflib
 perl png ppds python quicktime readline recode ruby samba sasl sdl session
sharedmem shorten skey slp sndfile 
snmp sockets sox speex spell sqlite sse ssl svg sysvipc tcltk tcpd test tetex
theora threads tidy tiff truetype
 truetype-fonts type1-fonts udev unicode usb userlocales v4l vcd videos vorbis
wifi wmf xface xml xml2 xmms xos
d xpm xprint xv xvid yahoo zlib userland_GNU kernel_linux elibc_glibc"
Unset:  ASFLAGS, CTARGET, LC_ALL, LDFLAGS, LINGUAS, PORTDIR_OVERLAY


Finished in 105.964668 seconds.

  1) Failure:
test_delete(TestDBM) [./dbm/test_dbm.rb:332]:
<DBMError> exception expected but none was thrown.

  2) Failure:
test_delete(TestGDBM) [./gdbm/test_gdbm.rb:441]:
<GDBMError> exception expected but none was thrown.

  3) Failure:
test_s_open_error(TestGDBM) [./gdbm/test_gdbm.rb:199]:
<Errno::EACCES> exception expected but was
Class: <Errno::EAGAIN>
Message: <"Resource temporarily unavailable - tmptest_gdbm">
---Backtrace---
./gdbm/test_gdbm.rb:200:in `open'
./gdbm/test_gdbm.rb:200:in `test_s_open_error'
./gdbm/test_gdbm.rb:199:in `test_s_open_error'
---------------

  4) Failure:
test_s_open_error(TestSDBM) [./sdbm/test_sdbm.rb:122]:
<Errno::EACCES> exception expected but none was thrown.

1341 tests, 14711 assertions, 4 failures, 0 errors
make: *** [test-all] Error 1

!!! ERROR: dev-lang/ruby-1.8.3 failed.
!!! Function src_test, Line 566, Exitcode 0
Comment 2 Caleb Tennis (RETIRED) gentoo-dev 2006-01-02 14:54:00 UTC
do the tests fail in 1.8.4?
Comment 3 Ylosar Goer 2006-01-02 17:50:01 UTC
(In reply to comment #2)
> do the tests fail in 1.8.4?

I just tried and they did not fail:
1356 tests, 15409 assertions, 0 failures, 0 errors
Comment 4 Henrique Ferreiro 2006-01-05 13:24:45 UTC
For me, ruby-1.8.4-r1 (and previous versions) fails with:

  1) Failure:
test_delete(TestGDBM) [./gdbm/test_gdbm.rb:442]:
<GDBMError> exception expected but none was thrown.

  2) Failure:
test_s_open_error(TestGDBM) [./gdbm/test_gdbm.rb:200]:
<Errno::EACCES> exception expected but was
Class: <Errno::EAGAIN>
Message: <"Resource temporarily unavailable - tmptest_gdbm">
---Backtrace---
./gdbm/test_gdbm.rb:201:in `open'
./gdbm/test_gdbm.rb:201:in `test_s_open_error'
./gdbm/test_gdbm.rb:200:in `test_s_open_error'
---------------

  3) Failure:
test_s_open_error(TestSDBM) [./sdbm/test_sdbm.rb:123]:
<Errno::EACCES> exception expected but none was thrown.

1322 tests, 14512 assertions, 3 failures, 0 errors

emerge --info:

Portage 2.1_pre3-r1 (default-linux/x86/2005.0, gcc-3.4.5, glibc-2.3.5-r3, 2.6.14-suspend2-r7 i686)
=================================================================
System uname: 2.6.14-suspend2-r7 i686 Intel(R) Pentium(R) M processor 1.60GHz
Gentoo Base System version 1.12.0_pre13
ccache version 2.4 [enabled]
dev-lang/python:     2.4.2
sys-apps/sandbox:    1.2.17
sys-devel/autoconf:  2.13, 2.59-r7
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r1
sys-devel/binutils:  2.16.1-r1
sys-devel/libtool:   1.5.22
virtual/os-headers:  2.6.11-r3
ACCEPT_KEYWORDS="x86 ~x86"
AUTOCLEAN="yes"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -march=pentium-m -mtune=pentium-m -pipe"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config /usr/lib/mozilla/defaults/pref /usr/share/X11/xkb /usr/share/config /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/splash /etc/terminfo /etc/texmf/web2c /etc/env.d"
CXXFLAGS="-O2 -march=pentium-m -mtune=pentium-m -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig buildpkg candy ccache collision-protect digest distlocks fixpackages sandbox sfperms strict test"
GENTOO_MIRRORS=" ftp://ftp.belnet.be/mirrors/rsync.gentoo.org/gentoo"
LANG="gl_ES.UTF-8"
LC_ALL="gl_ES.UTF-8"
LINGUAS="gl es"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage-gentopia /usr/local/portage-bmg /usr/local/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="x86 X acpi alsa audiofile avahi avi bash-completion bzip2 cairo cdr cscope cups dbus dvd dvdr eds emboss encode esd exif expat fam firefox flac foomaticdb fortran gdbm gif glut gmp gnome gnutls gphoto2 gpm gstreamer gtk gtk2 gtkhtml hal idn imagemagick imlib jpeg junit lcms libg++ libwww mad mikmod mmx mmxext mng mp3 mpeg ncurses nfs nls nptl ogg oggvorbis opengl pcre pic png quicktime readline samba scanner sse sse2 ssl svg tcltk test tetex theora tiff truetype truetype-fonts type1-fonts udev unicode usb vorbis xml xml2 xv xvid yaz zlib elibc_glibc kernel_linux linguas_gl linguas_es userland_GNU"
Unset:  ASFLAGS, CTARGET, LDFLAGS
Comment 5 Caleb Tennis (RETIRED) gentoo-dev 2006-01-06 06:45:15 UTC
*** Bug 116987 has been marked as a duplicate of this bug. ***
Comment 6 Caleb Tennis (RETIRED) gentoo-dev 2006-01-06 06:46:10 UTC
Can anyone confirm that their PORTAGE_TMPDIR is on an nfs mount or otherwise remotely mounted machine?
Comment 7 Michal Suchanek 2006-01-06 13:31:31 UTC
  1) Failure:
test_delete(TestDBM) [./dbm/test_dbm.rb:332]:
<DBMError> exception expected but none was thrown.

  2) Failure:
test_delete(TestGDBM) [./gdbm/test_gdbm.rb:442]:
<GDBMError> exception expected but none was thrown.

  3) Failure:
test_s_open_error(TestGDBM) [./gdbm/test_gdbm.rb:200]:
<Errno::EACCES> exception expected but was
Class: <Errno::EAGAIN>
Message: <"Resource temporarily unavailable - tmptest_gdbm">
---Backtrace---
./gdbm/test_gdbm.rb:201:in `open'
./gdbm/test_gdbm.rb:201:in `test_s_open_error'
./gdbm/test_gdbm.rb:200:in `test_s_open_error'
---------------

  4) Failure:
test_s_open_error(TestSDBM) [./sdbm/test_sdbm.rb:123]:
<Errno::EACCES> exception expected but none was thrown.

1356 tests, 15407 assertions, 4 failures, 0 errors
make: *** [test-all] Error 1

!!! ERROR: dev-lang/ruby-1.8.4-r1 failed.
!!! Function src_test, Line 566, Exitcode 0
!!! Make check failed. See above for details.


No remote mounts. There is no place to mount from :)

Everything (except home) is reiserfs with noatime.
Comment 8 Caleb Tennis (RETIRED) gentoo-dev 2006-01-06 14:14:49 UTC
Yeah, I'm getting the same errors now too. :(
Comment 9 Ylosar Goer 2006-01-06 14:27:49 UTC
(In reply to comment #6)
> Can anyone confirm that their PORTAGE_TMPDIR is on an nfs mount or otherwise
> remotely mounted machine?

Nothing about PORTAGE_TMPDIR here (part of /, reiserfs), but PORTAGE_TMPFS is /dev/shm which is tmpfs.

today i tried 1.8.4-r1 on two mostly stable x86 machines and tests did not fail. I guess my original problem is no more (the WEBrick error).
Comment 10 Brent Baude (RETIRED) gentoo-dev 2006-01-07 10:33:27 UTC
Mine was not remote either.
Comment 11 Jakub Moc (RETIRED) gentoo-dev 2006-01-19 03:33:55 UTC
*** Bug 119528 has been marked as a duplicate of this bug. ***
Comment 12 Henrique Ferreiro 2006-02-06 14:40:44 UTC
I pass all tests now, but I don't know what changes could have made this happen.
Comment 13 nixnut (RETIRED) gentoo-dev 2006-02-10 08:14:23 UTC
Created attachment 79441 [details]
output of make check

ruby-1.8.4 fails make check on my ppc as well:

1356 tests, 14987 assertions, 21 failures, 84 errors

problematic are drb, gdbm and sdbm
complete output is in the attached file
Comment 14 Caleb Tennis (RETIRED) gentoo-dev 2006-06-06 05:22:02 UTC
For the dbm/gdbm/sdbm errors it looks like they were failing because of running the tests as a priviledged user allowed you to write to a file even though it was opened as read-only.

I've mailed ruby core about this.  My "guess" is that it fails for people running emerge as root and passes for people who aren't?
Comment 15 Ylosar Goer 2006-06-06 23:35:57 UTC
I run emerge with the userpriv/usersandbox features and did not have the dbm/gdbm test failure.
Comment 16 Caleb Tennis (RETIRED) gentoo-dev 2006-06-07 05:06:39 UTC
Curious if we did someting like this:

src_test() 
{
  if !has_feature userpriv; then
    einfo "Ruby's unit tests only work with the userpriv feature of portage...skipping"
    return
  fi

  do_tests
}
Comment 17 Caleb Tennis (RETIRED) gentoo-dev 2006-06-07 05:27:33 UTC
Here's my proposed src_test:

src_test() {

        if hasq test $FEATURES; then

                if ! hasq userpriv $FEATURES; then
                        einfo "Ruby's unit tests require the userpriv feature of portage.  Skipping."
                else
                       if emake -j1 check -n &> /dev/null; then
                        vecho ">>> Test phase [check]: ${CATEGORY}/${PF}"
                                if ! emake -j1 check; then
                                hasq test $FEATURES && die "Make check failed. See above for details."
                                hasq test $FEATURES || eerror "Make check failed. See above for details."
                                fi
                        fi
                fi

        fi
}

Comment 18 Nguyen Thai Ngoc Duy (RETIRED) gentoo-dev 2006-09-01 20:13:28 UTC
1.8.3 has gone
Comment 19 Michal Suchanek 2006-09-02 01:16:21 UTC
And was it fixed?

It failed for 1.8.4 as well.
Comment 20 Caleb Tennis (RETIRED) gentoo-dev 2006-09-02 05:44:03 UTC
reopening
Comment 21 Richard Brown (RETIRED) gentoo-dev 2007-05-01 21:28:27 UTC
All tests pass, for me, with ruby-1.8.6-r1, please see the rubytests use flag as well. I'm assuming your errors were a combination of ruby using the installed ruby for tests and needing to be run as a user other than root.