-
-
Notifications
You must be signed in to change notification settings - Fork 11.3k
Description
Describe the issue:
The reproducer below succeeded on numpy 2.2.1
but fails on numpy 2.2.2
Reproduce the code example:
Edit: updated reproducer to include pytest
import numpy as np
import pytest
from numpy.testing import assert_array_equal
@pytest.mark.parametrize("na", [7])
def test_lexical_binary_search(na):
rng = np.random.default_rng(seed=42)
time = np.arange(20.0, dtype=np.float64)[:, None]
ant1, ant2 = (a.astype(np.int32)[None, :] for a in np.triu_indices(na, 1))
named_arrays = [("time", time), ("antenna1", ant1), ("antenna2", ant2)]
names, arrays = zip(*named_arrays)
arrays = tuple(a.ravel() for a in np.broadcast_arrays(*arrays))
structured_dtype = np.dtype([(n, a.dtype) for n, a in zip(names, arrays)])
carray = np.zeros(arrays[0].size, structured_dtype)
for n, a in zip(names, arrays):
carray[n] = a
choice = rng.choice(np.arange(carray.size), 10)
sarray = np.zeros(choice.size, structured_dtype)
sarray["time"] = carray["time"][choice]
sarray["antenna1"] = carray["antenna1"][choice]
sarray["antenna2"] = carray["antenna2"][choice]
idx = np.searchsorted(carray, sarray)
assert_array_equal(carray[idx], sarray)
Error message:
Fatal Python error: Segmentation fault
Current thread 0x00007c21e7cad080 (most recent call first):
File "/home/simon/.cache/pypoetry/virtualenvs/xarray-ms-jDhc3Ane-py3.11/lib/python3.11/site-packages/_pytest/terminal.py", line 463 in write_ensure_prefix
File "/home/simon/.cache/pypoetry/virtualenvs/xarray-ms-jDhc3Ane-py3.11/lib/python3.11/site-packages/_pytest/terminal.py", line 633 in pytest_runtest_logreport
File "/home/simon/.cache/pypoetry/virtualenvs/xarray-ms-jDhc3Ane-py3.11/lib/python3.11/site-packages/pluggy/_callers.py", line 103 in _multicall
File "/home/simon/.cache/pypoetry/virtualenvs/xarray-ms-jDhc3Ane-py3.11/lib/python3.11/site-packages/pluggy/_manager.py", line 120 in _hookexec
File "/home/simon/.cache/pypoetry/virtualenvs/xarray-ms-jDhc3Ane-py3.11/lib/python3.11/site-packages/pluggy/_hooks.py", line 513 in __call__
File "/home/simon/.cache/pypoetry/virtualenvs/xarray-ms-jDhc3Ane-py3.11/lib/python3.11/site-packages/_pytest/runner.py", line 246 in call_and_report
File "/home/simon/.cache/pypoetry/virtualenvs/xarray-ms-jDhc3Ane-py3.11/lib/python3.11/site-packages/_pytest/runner.py", line 132 in runtestprotocol
File "/home/simon/.cache/pypoetry/virtualenvs/xarray-ms-jDhc3Ane-py3.11/lib/python3.11/site-packages/_pytest/runner.py", line 113 in pytest_runtest_protocol
File "/home/simon/.cache/pypoetry/virtualenvs/xarray-ms-jDhc3Ane-py3.11/lib/python3.11/site-packages/pluggy/_callers.py", line 103 in _multicall
File "/home/simon/.cache/pypoetry/virtualenvs/xarray-ms-jDhc3Ane-py3.11/lib/python3.11/site-packages/pluggy/_manager.py", line 120 in _hookexec
File "/home/simon/.cache/pypoetry/virtualenvs/xarray-ms-jDhc3Ane-py3.11/lib/python3.11/site-packages/pluggy/_hooks.py", line 513 in __call__
File "/home/simon/.cache/pypoetry/virtualenvs/xarray-ms-jDhc3Ane-py3.11/lib/python3.11/site-packages/_pytest/main.py", line 362 in pytest_runtestloop
File "/home/simon/.cache/pypoetry/virtualenvs/xarray-ms-jDhc3Ane-py3.11/lib/python3.11/site-packages/pluggy/_callers.py", line 103 in _multicall
File "/home/simon/.cache/pypoetry/virtualenvs/xarray-ms-jDhc3Ane-py3.11/lib/python3.11/site-packages/pluggy/_manager.py", line 120 in _hookexec
File "/home/simon/.cache/pypoetry/virtualenvs/xarray-ms-jDhc3Ane-py3.11/lib/python3.11/site-packages/pluggy/_hooks.py", line 513 in __call__
File "/home/simon/.cache/pypoetry/virtualenvs/xarray-ms-jDhc3Ane-py3.11/lib/python3.11/site-packages/_pytest/main.py", line 337 in _main
File "/home/simon/.cache/pypoetry/virtualenvs/xarray-ms-jDhc3Ane-py3.11/lib/python3.11/site-packages/_pytest/main.py", line 283 in wrap_session
File "/home/simon/.cache/pypoetry/virtualenvs/xarray-ms-jDhc3Ane-py3.11/lib/python3.11/site-packages/_pytest/main.py", line 330 in pytest_cmdline_main
File "/home/simon/.cache/pypoetry/virtualenvs/xarray-ms-jDhc3Ane-py3.11/lib/python3.11/site-packages/pluggy/_callers.py", line 103 in _multicall
File "/home/simon/.cache/pypoetry/virtualenvs/xarray-ms-jDhc3Ane-py3.11/lib/python3.11/site-packages/pluggy/_manager.py", line 120 in _hookexec
File "/home/simon/.cache/pypoetry/virtualenvs/xarray-ms-jDhc3Ane-py3.11/lib/python3.11/site-packages/pluggy/_hooks.py", line 513 in __call__
File "/home/simon/.cache/pypoetry/virtualenvs/xarray-ms-jDhc3Ane-py3.11/lib/python3.11/site-packages/_pytest/config/__init__.py", line 175 in main
File "/home/simon/.cache/pypoetry/virtualenvs/xarray-ms-jDhc3Ane-py3.11/lib/python3.11/site-packages/_pytest/config/__init__.py", line 201 in console_main
File "/home/simon/.cache/pypoetry/virtualenvs/xarray-ms-jDhc3Ane-py3.11/bin/py.test", line 8 in <module>
Extension modules: numpy._core._multiarray_umath, numpy.linalg._umath_linalg, pyarrow.lib, arcae.lib.arrow_tables, 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, pandas._libs.tslibs.ccalendar, pandas._libs.tslibs.np_datetime, pandas._libs.tslibs.dtypes, pandas._libs.tslibs.base, pandas._libs.tslibs.nattype, pandas._libs.tslibs.timezones, pandas._libs.tslibs.fields, pandas._libs.tslibs.timedeltas, pandas._libs.tslibs.tzconversion, pandas._libs.tslibs.timestamps, pandas._libs.properties, pandas._libs.tslibs.offsets, pandas._libs.tslibs.strptime, pandas._libs.tslibs.parsing, pandas._libs.tslibs.conversion, pandas._libs.tslibs.period, pandas._libs.tslibs.vectorized, pandas._libs.ops_dispatch, pandas._libs.missing, pandas._libs.hashtable, pandas._libs.algos, pandas._libs.interval, pandas._libs.lib, pyarrow._compute, pandas._libs.ops, pandas._libs.hashing, pandas._libs.arrays, pandas._libs.tslib, pandas._libs.sparse, pandas._libs.internals, pandas._libs.indexing, pandas._libs.index, pandas._libs.writers, pandas._libs.join, pandas._libs.window.aggregations, pandas._libs.window.indexers, pandas._libs.reshape, pandas._libs.groupby, pandas._libs.json, pandas._libs.parsers, pandas._libs.testing, yaml._yaml, psutil._psutil_linux, psutil._psutil_posix, markupsafe._speedups, tornado.speedups, numcodecs.compat_ext, numcodecs.blosc, numcodecs.zstd, numcodecs.lz4, numcodecs._shuffle, msgpack._cmsgpack, numcodecs.jenkins, numcodecs.vlen, numcodecs.fletcher32 (total: 68)
Segmentation fault (core dumped)
Python and NumPy Versions:
2.2.2
3.11.11 (main, Dec 4 2024, 08:55:08) [GCC 13.2.0]
Runtime Environment:
[{'numpy_version': '2.2.2',
'python': '3.11.11 (main, Dec 4 2024, 08:55:08) [GCC 13.2.0]',
'uname': uname_result(system='Linux', node='simon-t14', release='6.8.0-51-generic', version='#52-Ubuntu SMP PREEMPT_DYNAMIC Thu Dec 5 13:09:44 UTC 2024', machine='x86_64')},
{'simd_extensions': {'baseline': ['SSE', 'SSE2', 'SSE3'],
'found': ['SSSE3',
'SSE41',
'POPCNT',
'SSE42',
'AVX',
'F16C',
'FMA3',
'AVX2'],
'not_found': ['AVX512F',
'AVX512CD',
'AVX512_KNL',
'AVX512_KNM',
'AVX512_SKX',
'AVX512_CLX',
'AVX512_CNL',
'AVX512_ICL']}},
{'architecture': 'Haswell',
'filepath': '/home/simon/.cache/pypoetry/virtualenvs/xarray-ms-jDhc3Ane-py3.11/lib/python3.11/site-packages/numpy.libs/libscipy_openblas64_-6bb31eeb.so',
'internal_api': 'openblas',
'num_threads': 12,
'prefix': 'libscipy_openblas',
'threading_layer': 'pthreads',
'user_api': 'blas',
'version': '0.3.28'}]
Context for the issue:
This isn't high priority for me as the test case where this failed demonstrates an idea rather than core functionality.