#Issue3088 in-progress: Race condition with instances of classes derived from threading.local:
When a thread touches such an object for the first time, a new thread-local __dict__ is created,
and the __init__ method is run.
But a thread switch can occur here; if the other thread touches the same object, it installs another
__dict__; when the first thread resumes, it updates the dictionary of the second...
This is the deep cause of the failures in test_multiprocessing involving "managers" objects.
Backport of r64601.
diff --git a/Misc/NEWS b/Misc/NEWS
index 4d6dd83..ebaefd4 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -16,6 +16,10 @@
set to a custom object whose write() method happens to install
another file in sys.stdout.
+- Issue #3088: Corrected a race condition in classes derived from
+ threading.local: the first member set by a thread could be saved in
+ another thread's dictionary.
+
- Issue #3100: Corrected a crash on deallocation of a subclassed weakref which
holds the last (strong) reference to its referent.