This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author Jorge Herskovic
Recipients Jorge Herskovic
Date 2015-06-21.15:08:26
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <>
I'm writing a library on top of multiprocessing. As part of the test suite, I create and destroy dozens of processes repeatedly. About once in 50 runs, the tests complete successfully but the program crashes with:

Error in atexit._run_exitfuncs:
Traceback (most recent call last):
  File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/multiprocessing/", line 286, in _exit_function
  File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/multiprocessing/", line 246, in _run_finalizers
    items = [x for x in list(_finalizer_registry.items()) if f(x)]
RuntimeError: dictionary changed size during iteration

(this is on OS X 10.10.3, Python 3.4.3; I've been unable to replicate the behavior on Python 2.7.9, 3.5.0b2, or pypy despite hundreds of runs)

The problematic code is available at and the tests should be run with nosetests
Date User Action Args
2015-06-21 15:08:27Jorge Herskovicsetrecipients: + Jorge Herskovic
2015-06-21 15:08:26Jorge Herskovicsetmessageid: <>
2015-06-21 15:08:26Jorge Herskoviclinkissue24484 messages
2015-06-21 15:08:26Jorge Herskoviccreate