Opened 9 years ago

Last modified 5 years ago

#9297 new defect

Test failures of Python (2.6.4.p9) on Solaris 10 SPARC (32-bit)

Reported by: drkirkby Owned by: drkirkby
Priority: major Milestone: sage-6.4
Component: porting: Solaris Keywords: testsuite, Python modules, Failed, SAGE_CHECK
Cc: jsp, leif Merged in:
Authors: Reviewers:
Report Upstream: N/A Work issues:
Branch: Commit:
Dependencies: Stopgaps:

Description (last modified by drkirkby)

Hardware & associated software

  • Sun Blade 1000
  • 2 x 900 MHz UltraSPARC III+ CPUs
  • 2 GB RAM
  • Solaris 10 03/2005 (first release of Solaris 10)
  • gcc 4.4.3 (uses Sun linker and Sun assembler)
  • Sage 4.4.4.alpha1
  • #9041 to allow Python to build _socket. (Not needed on SPARC, but it was applied)
  • #9295 to permit Python test suite to build.

Background

Although Sage 4.4.4.alpha1 builds fully on Solaris 10 (SPARC), there are some test failures of the Python test suite, which are discovered if SAGE_CHECK is exported to "yes", and #9295 included in Sage, which allows SAGE_CHECK to work with Python.

Summary of test results

Here are the summary of the test results. Although there are the same number of failures as observed on OpenSolaris x64 (64-bit), the failures are not always the same - there are some unique to OpenSolaris and some unique to Solaris 10. See #9299 for the OpenSolaris x64 (64-bit) failures of Python.

322 tests OK.
5 tests failed:
    test_distutils test_float test_hotshot test_multiprocessing
    test_sunaudiodev
38 tests skipped:
    test_aepack test_al test_applesingle test_bsddb test_bsddb185
    test_bsddb3 test_cd test_cl test_codecmaps_cn test_codecmaps_hk
    test_codecmaps_jp test_codecmaps_kr test_codecmaps_tw test_curses
    test_epoll test_gdbm test_gl test_imgfile test_kqueue
    test_linuxaudiodev test_macos test_macostools test_normalization
    test_ossaudiodev test_pep277 test_py3kwarn test_scriptpackages
    test_smtpnet test_socketserver test_ssl test_startfile test_tcl
    test_timeout test_urllib2net test_urllibnet test_winreg
    test_winsound test_zipfile64
2 skips unexpected on sunos5:
    test_tcl test_ssl

Individual test failures

test test_distutils failed -- errors occurred; run in verbose mode for details

test test_float failed -- Traceback (most recent call last):
  File "/export/home/drkirkby/sage-4.4.4.alpha1/spkg/build/python-2.6.4.p9/src/Lib/test/test_float.py", line 765, in test_roundtrip
    self.identical(-x, roundtrip(-x))
  File "/export/home/drkirkby/sage-4.4.4.alpha1/spkg/build/python-2.6.4.p9/src/Lib/test/test_float.py", line 375, in identical
    self.fail('%r not identical to %r' % (x, y))
AssertionError: -0.0 not identical to 0.0

test_hotshot
test test_hotshot failed -- Traceback (most recent call last):
  File "/export/home/drkirkby/sage-4.4.4.alpha1/spkg/build/python-2.6.4.p9/src/Lib/test/test_hotshot.py", line 130, in test_logreader_eof_error
    self.assertRaises((IOError, EOFError), _hotshot.logreader, ".")
AssertionError: (<type 'exceptions.IOError'>, <type 'exceptions.EOFError'>) not raised

test_multiprocessing
test test_multiprocessing failed -- Traceback (most recent call last):
  File "/export/home/drkirkby/sage-4.4.4.alpha1/spkg/build/python-2.6.4.p9/src/Lib/test/test_multiprocessing.py", line 1666, in test_import
    __import__(name)
  File "/export/home/drkirkby/sage-4.4.4.alpha1/spkg/build/python-2.6.4.p9/src/Lib/multiprocessing/reduction.py", line 29, in <module>
    raise ImportError('pickling of connections not supported')
ImportError: pickling of connections not supported


test test_sunaudiodev failed -- (13, 'Permission denied', '/dev/audio')

Change History (13)

comment:1 Changed 9 years ago by drkirkby

  • Description modified (diff)

Note, #8440 was supposed to fix a failure of _multiprocessing to build, but it may be that whilst that fix allowed it to build, it does not actually work correctly.

comment:2 follow-up: Changed 9 years ago by rlm

Python failures have also been reported with SAGE_CHECK=yes on Ubuntu 9.04 x86 and x86_64.

See http://groups.google.com/group/sage-release/msg/92e83194909d4d72

comment:3 Changed 9 years ago by rlm

This also occurs on sage.math, so it is very easy for someone to work on...

comment:4 in reply to: ↑ 2 ; follow-up: Changed 9 years ago by drkirkby

Replying to rlm:

Python failures have also been reported with SAGE_CHECK=yes on Ubuntu 9.04 x86 and x86_64.

See http://groups.google.com/group/sage-release/msg/92e83194909d4d72

If you see this thread

http://groups.google.co.uk/group/sage-devel/browse_thread/thread/b7856076ea5aefbd/8d381b77e4d461cb

where I asked people to test their python build, everyone who responded had one or more failures. test_distutils is a bit worrying, as everyone reported that failed for them. There was a report that the clean 2.6.5 source code passes this test, but I don't know for sure if the 2.6.4 in Sage passes this test. I think it does, in which case a patch in Sage, or the Sage build environment is screwing test_disutils up.

I reported the test_float on Solaris upstream

http://bugs.python.org/issue9069

but that was found to be a bug in gcc >= 4.4.0, but has now been fixed in the gcc source code, so the next release should have the issue resolved.

That still leaves a few python failures on Solaris that I've not resolved.

I think people should create individual tickets for individual test failures, as there are many different failures on many peoples systems. But test_disutils is common to ever single report I see.

Dave

comment:5 in reply to: ↑ 4 Changed 9 years ago by drkirkby

Replying to drkirkby:

But test_disutils is common to ever single report I see.

Dave

Oops,

I mean test_disutils is common to every single report I see.

If anyone has some time and wants to work on them, then test_disutils is probably the best test to start with, as it effects everyone. Or is is affects everyone? I always have problems with those words!

Dave

comment:6 Changed 9 years ago by leif

  • Cc leif added
  • Keywords testsuite Python modules Failed SAGE_CHECK added

comment:7 Changed 9 years ago by leif

On Ubuntu 9.04 (x86 in this case), spkg/logs/python-*.log shows:

...
running build
running build_ext
INFO: Can't locate Tcl/Tk libs and/or headers

Failed to find the necessary bits to build these modules:
_bsddb             _curses            _curses_panel
_hashlib           _ssl               _tkinter
bsddb185           dbm                gdbm
sunaudiodev
To find the necessary bits, look in setup.py in detect_modules() for the module's name.

running build_scripts
...

and

...
Successfully installed python-2.6.4.p9
Running the test suite.
Testing the Python package
...
test_distutils
test test_distutils failed -- errors occurred; run in verbose mode for details
...
test_os
/home/leif/sage-4.5.rc1-par-j6-sage-check/spkg/build/python-2.6.4.p9/src/Lib/os.py:760: DeprecationWarning: integer argument expected, got float
  bs += read(_urandomfd, n - len(bs))
...
test_sundry
/home/leif/sage-4.5.rc1-par-j6-sage-check/spkg/build/python-2.6.4.p9/src/Lib/test/test_sundry.py:66: DeprecationWarning: The posixfile module is deprecated; fcntl.lockf() provides better locking
  import posixfile
...
test_xmllib
/home/leif/sage-4.5.rc1-par-j6-sage-check/spkg/build/python-2.6.4.p9/src/Lib/test/test_xmllib.py:24: DeprecationWarning: The xmllib module is obsolete.  Use xml.sax instead.
  import xmllib
...
test_zlib
test test_zlib failed -- Traceback (most recent call last):
  File "/home/leif/sage-4.5.rc1-par-j6-sage-check/spkg/build/python-2.6.4.p9/src/Lib/test/test_zlib.py", line 84, in test_baddecompressobj
    self.assertRaises(ValueError, zlib.decompressobj, 0)
AssertionError: ValueError not raised

323 tests OK.
2 tests failed:
    test_distutils test_zlib
40 tests skipped:
    test_aepack test_al test_applesingle test_bsddb test_bsddb185
    test_bsddb3 test_cd test_cl test_codecmaps_cn test_codecmaps_hk
    test_codecmaps_jp test_codecmaps_kr test_codecmaps_tw test_curses
    test_dbm test_gdbm test_gl test_imgfile test_kqueue
    test_linuxaudiodev test_macos test_macostools test_normalization
    test_ossaudiodev test_pep277 test_py3kwarn test_scriptpackages
    test_smtpnet test_socketserver test_ssl test_startfile
    test_sunaudiodev test_tcl test_timeout test_unicode_file
    test_urllib2net test_urllibnet test_winreg test_winsound
    test_zipfile64
5 skips unexpected on linux2:
    test_tcl test_dbm test_ssl test_gdbm test_bsddb
make[2]: [test] Error 1 (ignored)
...
[above repeated]
test test_zlib failed -- Traceback (most recent call last):
  File "/home/leif/sage-4.5.rc1-par-j6-sage-check/spkg/build/python-2.6.4.p9/src/Lib/test/test_zlib.py", line 84, in test_baddecompressobj
    self.assertRaises(ValueError, zlib.decompressobj, 0)
AssertionError: ValueError not raised

323 tests OK.
2 tests failed:
    test_distutils test_zlib
40 tests skipped:
    test_aepack test_al test_applesingle test_bsddb test_bsddb185
    test_bsddb3 test_cd test_cl test_codecmaps_cn test_codecmaps_hk
    test_codecmaps_jp test_codecmaps_kr test_codecmaps_tw test_curses
    test_dbm test_gdbm test_gl test_imgfile test_kqueue
    test_linuxaudiodev test_macos test_macostools test_normalization
    test_ossaudiodev test_pep277 test_py3kwarn test_scriptpackages
    test_smtpnet test_socketserver test_ssl test_startfile
    test_sunaudiodev test_tcl test_timeout test_unicode_file
    test_urllib2net test_urllibnet test_winreg test_winsound
    test_zipfile64
5 skips unexpected on linux2:
    test_tcl test_dbm test_ssl test_gdbm test_bsddb
make[2]: *** [test] Error 1
make[2]: Leaving directory `/home/leif/sage-4.5.rc1-par-j6-sage-check/spkg/build/python-2.6.4.p9/src'
An error occurred while testing Python
*************************************
Error testing package ** python-2.6.4.p9 **
*************************************
sage: An error occurred while testing python-2.6.4.p9
...

The former can be found by doing

grep -A5 Failed install.log     # or spkg/logs/python-*.log

in (successful) builds without SAGE_CHECK=yes, too.

comment:8 follow-up: Changed 9 years ago by drkirkby

It would be good if the Linux failures could be put on another ticket. Otherwise, this ticket will be just full of test results on every conceivable system. I've created tickets for 32-bit SPARC (this one) and OpenSolaris (#9299)

Dave

comment:9 in reply to: ↑ 8 Changed 9 years ago by leif

Replying to drkirkby:

It would be good if the Linux failures could be put on another ticket. Otherwise, this ticket will be just full of test results on every conceivable system.

Ok, my post was a bit verbose, too. I only wanted to stress that zlib and distutils failing is not specific to SunOS/Solaris (or SPARC).

I've created tickets for 32-bit SPARC (this one) and OpenSolaris (#9299)

Perhaps we should create meta-tickets for

  • "Missing bits" (they differ from system to system, I don't know which of them might be relevant for Sage)
  • Python testsuite failures

The former need not be a meta-ticket, perhaps just collecting brief reports from various platforms, and informational to users who wonder if Sage's functionality can be affected. This information should be put into the Wiki and Installation Guide later.

comment:10 Changed 6 years ago by jdemeyer

  • Milestone changed from sage-5.11 to sage-5.12

comment:11 Changed 6 years ago by vbraun_spam

  • Milestone changed from sage-6.1 to sage-6.2

comment:12 Changed 5 years ago by vbraun_spam

  • Milestone changed from sage-6.2 to sage-6.3

comment:13 Changed 5 years ago by vbraun_spam

  • Milestone changed from sage-6.3 to sage-6.4
Note: See TracTickets for help on using tickets.