Bug 1935606

Summary: mpi4py: FTBFS in Fedora rawhide
Product: [Fedora] Fedora Reporter: Tomáš Hrnčiar <thrnciar>
Component: mpi4pyAssignee: Gwyn Ciesla <gwync>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: rawhideCC: dakingun, dledford, gwync, hladky.jiri, orion, pkfed, python-sig, tomspur, zbyszek
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
URL: https://koschei.fedoraproject.org/package/mpi4py
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2021-05-17 19:38:41 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1890881, 1927309    

Description Tomáš Hrnčiar 2021-03-05 09:23:03 UTC
Description of problem:
Package mpi4py fails to build from source in Fedora rawhide.

Version-Release number of selected component (if applicable):
3.0.3-7.fc34

Steps to Reproduce:
koji build --scratch f35 mpi4py-3.0.3-7.fc34.src.rpm

Additional info:
This package is tracked by Koschei. See:
https://koschei.fedoraproject.org/package/mpi4py

Comment 1 Gwyn Ciesla 2021-03-08 17:12:04 UTC
https://github.com/open-mpi/ompi/issues/8340

Comment 2 Orion Poplawski 2021-03-09 03:10:27 UTC
This original failure should be fixed in openmpi-4.1.1-0.1.rc1.fc35.  This seems new and is with mpich and seems to have started with mpich 3.4.1

testIsCommutative (test_op.TestOp) ... Assertion failed in file src/mpi/coll/op/op_commutative.c at line 98: ((op)&(0x000000ff)) < MPIR_OP_N_BUILTIN
/usr/lib64/mpich/lib/libmpi.so.12(MPL_backtrace_show+0x39) [0x7fcae6409639]
/usr/lib64/mpich/lib/libmpi.so.12(MPI_Op_commutative+0x4db) [0x7fcae6265b8b]
/builddir/build/BUILDROOT/mpi4py-3.0.3-7.fc35.x86_64/usr/lib64/python3.9/site-packages/mpich/mpi4py/MPI.cpython-39-x86_64-linux-gnu.so(+0x900b9) [0x7fcae6c140b9]
/lib64/libpython3.9.so.1.0(+0x117050) [0x7fcae7611050]
/lib64/libpython3.9.so.1.0(_PyEval_EvalFrameDefault+0x6ed) [0x7fcae760388d]
/lib64/libpython3.9.so.1.0(+0x116303) [0x7fcae7610303]
/lib64/libpython3.9.so.1.0(+0x11e481) [0x7fcae7618481]
/lib64/libpython3.9.so.1.0(_PyEval_EvalFrameDefault+0x480) [0x7fcae7603620]
/lib64/libpython3.9.so.1.0(+0x116303) [0x7fcae7610303]
/lib64/libpython3.9.so.1.0(_PyEval_EvalFrameDefault+0x6ed) [0x7fcae760388d]
/lib64/libpython3.9.so.1.0(+0x10829d) [0x7fcae760229d]
/lib64/libpython3.9.so.1.0(_PyFunction_Vectorcall+0xee) [0x7fcae760ffde]
/lib64/libpython3.9.so.1.0(+0x11e522) [0x7fcae7618522]
/lib64/libpython3.9.so.1.0(_PyEval_EvalFrameDefault+0x330d) [0x7fcae76064ad]
/lib64/libpython3.9.so.1.0(+0x10829d) [0x7fcae760229d]
/lib64/libpython3.9.so.1.0(_PyFunction_Vectorcall+0xee) [0x7fcae760ffde]
/lib64/libpython3.9.so.1.0(_PyObject_FastCallDictTstate+0x67) [0x7fcae760b507]
/lib64/libpython3.9.so.1.0(_PyObject_Call_Prepend+0x6c) [0x7fcae761715c]
/lib64/libpython3.9.so.1.0(+0x1b9ff2) [0x7fcae76b3ff2]
/lib64/libpython3.9.so.1.0(_PyObject_MakeTpCall+0x87) [0x7fcae760b9a7]
/lib64/libpython3.9.so.1.0(_PyEval_EvalFrameDefault+0x5266) [0x7fcae7608406]
/lib64/libpython3.9.so.1.0(+0x10829d) [0x7fcae760229d]
/lib64/libpython3.9.so.1.0(_PyFunction_Vectorcall+0xee) [0x7fcae760ffde]
RPM build errors:
/lib64/libpython3.9.so.1.0(+0x11e522) [0x7fcae7618522]
/lib64/libpython3.9.so.1.0(_PyEval_EvalFrameDefault+0x330d) [0x7fcae76064ad]
/lib64/libpython3.9.so.1.0(+0x10829d) [0x7fcae760229d]
/lib64/libpython3.9.so.1.0(_PyFunction_Vectorcall+0xee) [0x7fcae760ffde]
/lib64/libpython3.9.so.1.0(_PyObject_FastCallDictTstate+0x67) [0x7fcae760b507]
/lib64/libpython3.9.so.1.0(_PyObject_Call_Prepend+0x6c) [0x7fcae761715c]
/lib64/libpython3.9.so.1.0(+0x1b9ff2) [0x7fcae76b3ff2]
/lib64/libpython3.9.so.1.0(_PyObject_MakeTpCall+0x87) [0x7fcae760b9a7]
/lib64/libpython3.9.so.1.0(_PyEval_EvalFrameDefault+0x5266) [0x7fcae7608406]
internal ABORT - process 0

Comment 3 Orion Poplawski 2021-03-09 03:12:43 UTC
https://github.com/mpi4py/mpi4py/issues/30

Comment 4 Zbigniew Jędrzejewski-Szmek 2021-05-17 08:21:29 UTC
The solution seems to be https://github.com/pmodels/mpich/pull/5127. But those patches
are for 4.0 branch, and they don't apply at all to 3.4.x. I'm afraid that they'll land in
mpich when 4.0 is released, which might still be a while.

In https://github.com/mpi4py/mpi4py/issues/30 a workaround to disable tests in mpi4py
was proposed. Maybe let's use that instead?

Comment 5 Gwyn Ciesla 2021-05-17 19:38:41 UTC
Good idea. Done.