TST: possible threading-related crash in test_huge_list_error
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 32.8k
- Forks
- 12.8k
- Avg merge
- 1d 7h
- Merged PRs (30d)
- 197
Description
I spun up the conda-forge BLAS testing again now that the 3.14 & 3.14t builds are in (for investigating an unrelated problem with llvm-openmp v21.1 on windows, actually), and noticed that 2 out of 4 linux-64 + 3.14t jobs crashed in test_huge_list_error.
Specifically, the crash occurred for BLAS flavours blis & MKL, while openblas & netlib had no failures. Due to the nature of threading bugs, this could be flaky though, or be dependent on totally different things than the BLAS flavour... In any case, it's the only failure in the whole test suite, which is actually a pretty good sign IMO. :)
│ =================================== FAILURES ===================================
│ ________________________ _core/tests/test_shape_base.py ________________________
│ [gw0] linux -- Python 3.14.0 $SRC_DIR_run_env/bin/python
│ worker 'gw0' crashed while running '_core/tests/test_shape_base.py::TestConcatenate::test_huge_list_error'
│ =============================== warnings summary ===============================
The last aspect that made me think "threading" is the name of the test. If the list is indeed huge, then there's a bigger window (relatively speaking) to hit some race conditions, and even more so if error paths are involved.
Note that this test did not fail on any of the other python implementations from 3.10-3.14, including 3.13t. It also doesn't seem to affect osx/win (though not all runs have finished yet).
CC @ngoldbaum
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with _core/tests/test_shape_base.py::TestConcatenate::test_huge_list_error and reproduce the crash on Linux with Python 3.14t across the BLAS variants mentioned. Compare the failing blis and MKL runs with openblas and netlib, then determine whether the failure is threading-related and establish a reliable test outcome.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- testing-qa
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100