Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 478114 - =dev-python/mpi4py-1.3 testsuite once hung starting
Summary: =dev-python/mpi4py-1.3 testsuite once hung starting
Status: RESOLVED OBSOLETE
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Python Gentoo Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-07-25 10:11 UTC by Ian Delaney (RETIRED)
Modified: 2013-07-26 10:01 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 Ian Delaney (RETIRED) gentoo-dev 2013-07-25 10:11:58 UTC
On attempting to migrate this to distutils-r1, I found the testsuite to hang in the current mpi4py-1.3.ebuild.

testuser@archtester ~/cvsPortage/gentoo-x86/app-emulation/xen-tools $ pushd /mnt/gen2/TmpDir/portage/dev-python/mpi4py-1.3-r1/work/mpi4py-1.3-python2_7/mnt/gen2/TmpDir/portage/dev-python/mpi4py-1.3-r1/work/mpi4py-1.3-python2_7 ~/cvsPortage/gentoo-x86/app-emulation/xen-tools

$ PYTHONPATH=build/lib/ mpiexec -n 2 python test/runtests.py --exclude=file --exclude=class
or
$ PYTHONPATH=build/lib/ mpiexec -n 2 python test/runtests.py

yields

[0@archtester] Python 2.7 (/usr/bin/python2.7)
[0@archtester] MPI 2.1 (Open MPI 1.6.4)
[0@archtester] mpi4py 1.3 (/mnt/gen2/TmpDir/portage/dev-python/mpi4py-1.3-r1/work/mpi4py-1.3-python2_7/build/lib/mpi4py)
[1@archtester] Python 2.7 (/usr/bin/python2.7)
[1@archtester] MPI 2.1 (Open MPI 1.6.4)
[1@archtester] mpi4py 1.3 (/mnt/gen2/TmpDir/portage/dev-python/mpi4py-1.3-r1/work/mpi4py-1.3-python2_7/build/lib/mpi4py)
................................................................................................................................................................
x many more lines
----------------------------------------------------------------------
Ran 580 tests in 28.996s

OK
----------------------------------------------------------------------
Ran 580 tests in 28.978s

OK
so the testsuite works perfectly.

dev-python/mpi4py $ PYTHON_TARGETS=python2_7 ebuild mpi4py-1.3.ebuild clean test

===============================================

>>> Source compiled.
 * Testing of dev-python/mpi4py-1.3 with CPython 2.7...

^Z
[36]+  Stopped                 PYTHON_TARGETS=python2_7 ebuild mpi4py-1.3.ebuild clean test

Identical outcome in the would be migrated mpi4py-1.3-r1.ebuild.
I've not seen anything like this before.
Comment 1 Ian Delaney (RETIRED) gentoo-dev 2013-07-26 10:01:24 UTC
This was resolved in bug #462602 in openmpi

dev-python/mpi4py $ PYTHON_TARGETS="python2_6 python3_2" ebuild mpi4py-1.3-r1.ebuild clean test

yielded
===================================================
Traceback (most recent call last):
  File "./test/runtests.py", line 207, in <module>
    sys.exit(main())
  File "./test/runtests.py", line 198, in main
    testsuite = load_tests(options, args)
  File "./test/runtests.py", line 157, in load_tests
    module = __import__(testname)
  File "./test/test_subclass.py", line 298, in <module>
    dummy.setUp()
  File "./test/test_subclass.py", line 267, in setUp
    MPI.INFO_NULL)
  File "File.pyx", line 67, in mpi4py.MPI.File.Open (src/mpi4py.MPI.c:82647)
mpi4py.MPI.Exception: MPI_ERR_OTHER: known error not in list
Traceback (most recent call last):
  File "./test/runtests.py", line 207, in <module>
    sys.exit(main())
  File "./test/runtests.py", line 198, in main
    testsuite = load_tests(options, args)
  File "./test/runtests.py", line 157, in load_tests
    module = __import__(testname)
  File "./test/test_subclass.py", line 298, in <module>
    dummy.setUp()
  File "./test/test_subclass.py", line 267, in setUp
    MPI.INFO_NULL)
  File "File.pyx", line 67, in mpi4py.MPI.File.Open (src/mpi4py.MPI.c:82647)
mpi4py.MPI.Exception: MPI_ERR_OTHER: known error not in list

with emerge -1 sys-cluster/openmpi.  

<  metadata.xml, mpi4py-1.3.ebuild:
  Exclude tests when romio is not set on mpi

has_version virtual/mpi[romio] || exclude="--exclude=file --exclude=class"
        mpiexec -n 2 "${PYTHON}" ./test/runtests.py ${exclude}>

I this ever worked, it doesn't now.

  26 Jul 2013; Ian Delaney <idella4@gentoo.org> +mpi4py-1.3-r1.ebuild:
  migrate to distutils-r1, keep old for now considering changes needed