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 mzamazal
Recipients mzamazal
Date 2016-01-22.15:24:46
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1453476286.88.0.329468896089.issue26180@psf.upfronthosting.co.za>
In-reply-to
Content
When calling multiprocessing.managers.BaseManager repeatedly from a client, each time from a new thread, new entry with (already existent) multiprocessing.util.ForkAwareLocal instance is inserted as a value into multiprocessing.util._afterfork_registry dictionary on each of the calls.  So the dictionary grows on each client call and may grow so indefinitely, causing memory leak if nothing else.

The attached file demonstrates the problem (Python 2.7 version, it's reproducible on 3.4 as well after 2->3 adjustments).  Just run it and look at the output.  The printed dictionary contains 10 entries holding the same ForkAwareLocal instance although there should be probably just one such entry there.
History
Date User Action Args
2016-01-22 15:24:46mzamazalsetrecipients: + mzamazal
2016-01-22 15:24:46mzamazalsetmessageid: <1453476286.88.0.329468896089.issue26180@psf.upfronthosting.co.za>
2016-01-22 15:24:46mzamazallinkissue26180 messages
2016-01-22 15:24:46mzamazalcreate