Jacob Walls added the comment:
Unfortunately, at the outset I should have tested this without multiprocessing.
I can reproduce without multiprocessing[1], which meant I could more easily
pinpoint the failure. There is an expensive O(nm) algorithm[2] in the music21
library that is overflowing
Jacob Walls added the comment:
Thanks for this detailed reply. I reproduced on Python 3.9.4 on the same iMac
from my original report running macOS 10.13.6, but with much lesser frequency
(I wouldn't use the word "consistently" anymore).
I tried on a MacBook Pro with worn-out hardware running
Ned Deily added the comment:
Thanks for providing a detailed and relatively simple-to-run test case for such
a complicated failure. Not totally surprising for what appears to likely be a
race condition, I have been unable to reproduce it under several macOS
environments including in a 10.13.
New submission from Jacob Walls :
macOS 10.13.6
Python 3.9.2
I can consistently reproduce a seg fault while using
multiprocessing.JoinableQueue in Python 3.9.2.
My use case is the sheet music processing library music21. My fork includes a
folder of 209 files I use to reproduce, running 3 cor