tests fail on s390x
- Langage dominant
- Python
- Étoiles
- 211
- Forks
- 58
- Merge moyen
- 1 j 17 h
- PR mergées (30 j)
- 6
Description
When building the Fedora package for version 2.2.2, s390x fails with:
```
============================= test session starts ==============================
platform linux -- Python 3.12.0b4, pytest-7.3.2, pluggy-1.0.0 -- /usr/bin/python3
cachedir: .pytest_cache
rootdir: /builddir/build/BUILD/python-blosc2-2.2.2
configfile: pytest.ini
collecting ... collected 1023 items
tests/test_bytes_array.py::test_bytes_array[True-] PASSED [ 0%]
tests/test_bytes_array.py::test_bytes_array[True-1111111] PASSED [ 0%]
tests/test_bytes_array.py::test_bytes_array[False-] PASSED [ 0%]
tests/test_bytes_array.py::test_bytes_array[False-1111111] PASSED [ 0%]
tests/test_bytes_array.py::test_bytearray[data0] PASSED [ 0%]
tests/test_bytes_array.py::test_bytearray[data1] PASSED [ 0%]
tests/test_comp_info.py::test_comp_info[Codec.BLOSCLZ] PASSED [ 0%]
tests/test_comp_info.py::test_comp_info[Codec.LZ4] PASSED [ 0%]
tests/test_comp_info.py::test_comp_info[Codec.LZ4HC] PASSED [ 0%]
tests/test_comp_info.py::test_comp_info[Codec.ZLIB] PASSED [ 0%]
tests/test_comp_info.py::test_comp_info[Codec.ZSTD] PASSED [ 1%]
tests/test_compress2.py::test_compress2_numpy[obj0-cparams0-dparams0] PASSED [ 1%]
tests/test_compress2.py::test_compress2_numpy[obj1-cparams1-dparams1] PASSED [ 1%]
tests/test_compress2.py::test_compress2_numpy[obj2-cparams2-dparams2] PASSED [ 1%]
tests/test_compress2.py::test_compress2_numpy[obj3-cparams3-dparams3] PASSED [ 1%]
tests/test_compress2.py::test_compress2_numpy[obj4-cparams4-dparams4] PASSED [ 1%]
tests/test_compress2.py::test_compress2_numpy[obj5-cparams5-dparams5] PASSED [ 1%]
tests/test_compress2.py::test_compress2[7-cparams0-dparams0] PASSED [ 1%]
tests/test_compress2.py::test_compress2[641091-cparams1-dparams1] PASSED [ 1%]
tests/test_compress2.py::test_compress2[136-cparams2-dparams2] PASSED [ 1%]
tests/test_compress2.py::test_compress2[1231-cparams3-dparams3] PASSED [ 2%]
tests/test_compress2.py::test_raise_error[object0-cparams0-dparams0] PASSED [ 2%]
tests/test_compress2.py::test_raise_error[-cparams1-dparams1] PASSED [ 2%]
tests/test_compression_parameters.py::test_compression_parameters[2-0] PASSED [ 2%]
tests/test_compression_parameters.py::test_compression_parameters[1-30] PASSED [ 2%]
tests/test_compression_parameters.py::test_compression_parameters[4-5] PASSED [ 2%]
tests/test_compressors.py::test_compressors[Filter.NOFILTER-8-Codec.BLOSCLZ] PASSED [ 2%]
tests/test_compressors.py::test_compressors[Filter.NOFILTER-9-Codec.LZ4] PASSED [ 2%]
tests/test_compressors.py::test_compressors[Filter.NOFILTER-3-Codec.LZ4HC] PASSED [ 2%]
tests/test_compressors.py::test_compressors[Filter.NOFILTER-5-Codec.ZLIB] PASSED [ 2%]
tests/test_compressors.py::test_compressors[Filter.NOFILTER-2-Codec.ZSTD] PASSED [ 3%]
tests/test_compressors.py::test_compressors[Filter.SHUFFLE-8-Codec.BLOSCLZ] PASSED [ 3%]
tests/test_compressors.py::test_compressors[Filter.SHUFFLE-9-Codec.LZ4] PASSED [ 3%]
tests/test_compressors.py::test_compressors[Filter.SHUFFLE-3-Codec.LZ4HC] PASSED [ 3%]
tests/test_compressors.py::test_compressors[Filter.SHUFFLE-5-Codec.ZLIB] PASSED [ 3%]
tests/test_compressors.py::test_compressors[Filter.SHUFFLE-2-Codec.ZSTD] PASSED [ 3%]
tests/test_compressors.py::test_compressors[Filter.BITSHUFFLE-8-Codec.BLOSCLZ] PASSED [ 3%]
tests/test_compressors.py::test_compressors[Filter.BITSHUFFLE-9-Codec.LZ4] PASSED [ 3%]
tests/test_compressors.py::test_compressors[Filter.BITSHUFFLE-3-Codec.LZ4HC] PASSED [ 3%]
tests/test_compressors.py::test_compressors[Filter.BITSHUFFLE-5-Codec.ZLIB] PASSED [ 3%]
tests/test_compressors.py::test_compressors[Filter.BITSHUFFLE-2-Codec.ZSTD] PASSED [ 4%]
tests/test_compressors.py::test_compressors[Filter.DELTA-8-Codec.BLOSCLZ] PASSED [ 4%]
tests/test_compressors.py::test_compressors[Filter.DELTA-9-Codec.LZ4] PASSED [ 4%]
tests/test_compressors.py::test_compressors[Filter.DELTA-3-Codec.LZ4HC] PASSED [ 4%]
tests/test_compressors.py::test_compressors[Filter.DELTA-5-Codec.ZLIB] PASSED [ 4%]
tests/test_compressors.py::test_compressors[Filter.DELTA-2-Codec.ZSTD] PASSED [ 4%]
tests/test_compressors.py::test_compressors[Filter.TRUNC_PREC-8-Codec.BLOSCLZ] PASSED [ 4%]
tests/test_compressors.py::test_compressors[Filter.TRUNC_PREC-9-Codec.LZ4] PASSED [ 4%]
tests/test_compressors.py::test_compressors[Filter.TRUNC_PREC-3-Codec.LZ4HC] PASSED [ 4%]
tests/test_compressors.py::test_compressors[Filter.TRUNC_PREC-5-Codec.ZLIB] PASSED [ 4%]
tests/test_compressors.py::test_compressors[Filter.TRUNC_PREC-2-Codec.ZSTD] PASSED [ 4%]
tests/test_compressors.py::test_compressors[Filter.NDCELL-8-Codec.BLOSCLZ] PASSED [ 5%]
tests/test_compressors.py::test_compressors[Filter.NDCELL-9-Codec.LZ4] PASSED [ 5%]
tests/test_compressors.py::test_compressors[Filter.NDCELL-3-Codec.LZ4HC] PASSED [ 5%]
tests/test_compressors.py::test_compressors[Filter.NDCELL-5-Codec.ZLIB] PASSED [ 5%]
tests/test_compressors.py::test_compressors[Filter.NDCELL-2-Codec.ZSTD] PASSED [ 5%]
tests/test_compressors.py::test_compressors[Filter.NDMEAN-8-Codec.BLOSCLZ] PASSED [ 5%]
tests/test_compressors.py::test_compressors[Filter.NDMEAN-9-Codec.LZ4] PASSED [ 5%]
tests/test_compressors.py::test_compressors[Filter.NDMEAN-3-Codec.LZ4HC] PASSED [ 5%]
tests/test_compressors.py::test_compressors[Filter.NDMEAN-5-Codec.ZLIB] PASSED [ 5%]
tests/test_compressors.py::test_compressors[Filter.NDMEAN-2-Codec.ZSTD] PASSED [ 5%]
tests/test_compressors.py::test_compressors[Filter.BYTEDELTA-8-Codec.BLOSCLZ] PASSED [ 6%]
tests/test_compressors.py::test_compressors[Filter.BYTEDELTA-9-Codec.LZ4] PASSED [ 6%]
tests/test_compressors.py::test_compressors[Filter.BYTEDELTA-3-Codec.LZ4HC] PASSED [ 6%]
tests/test_compressors.py::test_compressors[Filter.BYTEDELTA-5-Codec.ZLIB] PASSED [ 6%]
tests/test_compressors.py::test_compressors[Filter.BYTEDELTA-2-Codec.ZSTD] PASSED [ 6%]
tests/test_decompress.py::test_decompress_numpy[object0-Codec.LZ4] PASSED [ 6%]
tests/test_decompress.py::test_decompress_numpy[object1-Codec.BLOSCLZ] PASSED [ 6%]
tests/test_decompress.py::test_decompress_numpy[object2-Codec.LZ4HC] PASSED [ 6%]
tests/test_decompress.py::test_decompress_numpy[object3-Codec.ZLIB] PASSED [ 6%]
tests/test_decompress.py::test_decompress_numpy[object4-Codec.ZSTD] PASSED [ 6%]
tests/test_decompress.py::test_decompress[object0-Codec.LZ4] PASSED [ 7%]
tests/test_decompress.py::test_decompress[object1-Codec.BLOSCLZ] PASSED [ 7%]
tests/test_decompress.py::test_decompress[A string-Codec.LZ4HC] PASSED [ 7%]
tests/test_decompress.py::test_decompress[object3-Codec.ZSTD] PASSED [ 7%]
tests/test_decompress.py::test_raise_error[object0-Codec.LZ4] PASSED [ 7%]
tests/test_decompress.py::test_raise_error[-Codec.ZLIB] PASSED [ 7%]
tests/test_iterchunks.py::test_iterchunks[cparams0-dparams0-0-None-True] PASSED [ 7%]
tests/test_iterchunks.py::test_iterchunks[cparams0-dparams0-0-None-False] PASSED [ 7%]
tests/test_iterchunks.py::test_iterchunks[cparams0-dparams0-0-b2frame-True] PASSED [ 7%]
tests/test_iterchunks.py::test_iterchunks[cparams0-dparams0-0-b2frame-False] PASSED [ 7%]
tests/test_iterchunks.py::test_iterchunks[cparams1-dparams1-1-None-True] FAILED [ 8%]
tests/test_iterchunks.py::test_iterchunks[cparams1-dparams1-1-None-False] PASSED [ 8%]
tests/test_iterchunks.py::test_iterchunks[cparams1-dparams1-1-b2frame-True] FAILED [ 8%]
tests/test_iterchunks.py::test_iterchunks[cparams1-dparams1-1-b2frame-False] FAILED [ 8%]
tests/test_iterchunks.py::test_iterchunks[cparams2-dparams2-5-None-True] FAILED [ 8%]
tests/test_iterchunks.py::test_iterchunks[cparams2-dparams2-5-None-False] PASSED [ 8%]
tests/test_iterchunks.py::test_iterchunks[cparams2-dparams2-5-b2frame-True] FAILED [ 8%]
tests/test_iterchunks.py::test_iterchunks[cparams2-dparams2-5-b2frame-False] FAILED [ 8%]
tests/test_iterchunks.py::test_iterchunks[cparams3-dparams3-10-None-True] FAILED [ 8%]
tests/test_iterchunks.py::test_iterchunks[cparams3-dparams3-10-None-False] PASSED [ 8%]
tests/test_iterchunks.py::test_iterchunks[cparams3-dparams3-10-b2frame-True] Fatal Python error: Segmentation fault
Current thread 0x000003ff9ebf7720 (most recent call first):
File "/builddir/build/BUILDROOT/python-blosc2-2.2.2-3.fc39.s390x/usr/lib64/python3.12/site-packages/blosc2/schunk.py", line 520 in get_slice
File "/builddir/build/BUILDROOT/python-blosc2-2.2.2-3.fc39.s390x/usr/lib64/python3.12/site-packages/blosc2/schunk.py", line 625 in iterchunks
File "/builddir/build/BUILD/python-blosc2-2.2.2/tests/test_iterchunks.py", line 38 in test_iterchunks
File "/usr/lib/python3.12/site-packages/_pytest/python.py", line 194 in pytest_pyfunc_call
File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 39 in _multicall
File "/usr/lib/python3.12/site-packages/pluggy/_manager.py", line 80 in _hookexec
File "/usr/lib/python3.12/site-packages/pluggy/_hooks.py", line 265 in __call__
File "/usr/lib/python3.12/site-packages/_pytest/python.py", line 1799 in runtest
File "/usr/lib/python3.12/site-packages/_pytest/runner.py", line 169 in pytest_runtest_call
File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 39 in _multicall
File "/usr/lib/python3.12/site-packages/pluggy/_manager.py", line 80 in _hookexec
File "/usr/lib/python3.12/site-packages/pluggy/_hooks.py", line 265 in __call__
File "/usr/lib/python3.12/site-packages/_pytest/runner.py", line 262 in
File "/usr/lib/python3.12/site-packages/_pytest/runner.py", line 341 in from_call
File "/usr/lib/python3.12/site-packages/_pytest/runner.py", line 261 in call_runtest_hook
File "/usr/lib/python3.12/site-packages/_pytest/runner.py", line 222 in call_and_report
File "/usr/lib/python3.12/site-packages/_pytest/runner.py", line 133 in runtestprotocol
File "/usr/lib/python3.12/site-packages/_pytest/runner.py", line 114 in pytest_runtest_protocol
File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 39 in _multicall
File "/usr/lib/python3.12/site-packages/pluggy/_manager.py", line 80 in _hookexec
File "/usr/lib/python3.12/site-packages/pluggy/_hooks.py", line 265 in __call__
File "/usr/lib/python3.12/site-packages/_pytest/main.py", line 348 in pytest_runtestloop
File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 39 in _multicall
File "/usr/lib/python3.12/site-packages/pluggy/_manager.py", line 80 in _hookexec
File "/usr/lib/python3.12/site-packages/pluggy/_hooks.py", line 265 in __call__
File "/usr/lib/python3.12/site-packages/_pytest/main.py", line 323 in _main
File "/usr/lib/python3.12/site-packages/_pytest/main.py", line 269 in wrap_session
File "/usr/lib/python3.12/site-packages/_pytest/main.py", line 316 in pytest_cmdline_main
File "/usr/lib/python3.12/site-packages/pluggy/_callers.py", line 39 in _multicall
File "/usr/lib/python3.12/site-packages/pluggy/_manager.py", line 80 in _hookexec
File "/usr/lib/python3.12/site-packages/pluggy/_hooks.py", line 265 in __call__
File "/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 166 in main
File "/usr/lib/python3.12/site-packages/_pytest/config/__init__.py", line 189 in console_main
File "/usr/bin/pytest", line 8 in
Extension modules: numpy.core._multiarray_umath, numpy.core._multiarray_tests, numpy.linalg._umath_linalg, numpy.fft._pocketfft_internal, numpy.random._common, numpy.random.bit_generator, numpy.random._bounded_integers, numpy.random._mt19937, numpy.random.mtrand, numpy.random._philox, numpy.random._pcg64, numpy.random._sfc64, numpy.random._generator, msgpack._cmsgpack, blosc2.blosc2_ext, ndindex.ndindex, ndindex.shapetools, ndindex._crt, ndindex.subindex_helpers, ndindex.array, ndindex.ellipsis, ndindex.newaxis, ndindex.integer, ndindex.booleanarray, ndindex.integerarray, ndindex.tuple, ndindex.slice, ndindex.chunking, ndindex._version, ndindex, psutil._psutil_linux, psutil._psutil_posix (total: 32)
/var/tmp/rpm-tmp.Zehlg7: line 52: 708 Segmentation fault (core dumped) CFLAGS="${CFLAGS:-${RPM_OPT_FLAGS}}" LDFLAGS="${LDFLAGS:-${RPM_LD_FLAGS}}" PATH="/builddir/build/BUILDROOT/python-blosc2-2.2.2-3.fc39.s390x/usr/bin:$PATH" PYTHONPATH="${PYTHONPATH:-/builddir/build/BUILDROOT/python-blosc2-2.2.2-3.fc39.s390x/usr/lib64/python3.12/site-packages:/builddir/build/BUILDROOT/python-blosc2-2.2.2-3.fc39.s390x/usr/lib/python3.12/site-packages}" PYTHONDONTWRITEBYTECODE=1 PYTEST_ADDOPTS="${PYTEST_ADDOPTS:-} --ignore=/builddir/build/BUILD/python-blosc2-2.2.2/.pyproject-builddir" PYTEST_XDIST_AUTO_NUM_WORKERS=3 /usr/bin/pytest tests/ -v
```
This is with python3-3.12.0~b4-1.fc39 and python3-numpy-1:1.24.3-2.fc39.
Unfortunately I can't provide much more information than this, I don't have access to the machine. I'd be happy to try patches though :)
Guide de contribution
Ouvrir le guide de contribution
Piste de recherche
Commencez par tests/test_iterchunks.py et reproduisez les échecs sur s390x avec pytest. Suivez le crash signalé dans blosc2/schunk.py, en particulier get_slice et iterchunks, et comparez les combinaisons de paramètres qui échouent avec celles qui réussissent. Le travail est terminé lorsque les tests iterchunks passent sur s390x sans échec ni segmentation fault.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- python
- Domaine
- operating-systems, testing-qa
- Type d'issue
- Bug
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Activité
- À l'abandon
- Clarté
- Plutôt claire
- Accessibilité débutants
- 35/100