summaryrefslogtreecommitdiff
path: root/lib/ansible/executor/action_write_locks.py
diff options
context:
space:
mode:
authorJames Cammarata <jimi@sngx.net>2016-09-14 10:12:37 -0500
committerJames Cammarata <jimi@sngx.net>2016-09-15 00:47:47 -0500
commit16e0cfa3181ca55d7eb25006117c904da9170580 (patch)
tree029e883dd7df31416e691ce7204cb00e70837370 /lib/ansible/executor/action_write_locks.py
parent600915aa97cd70dc3b6c5e5a3d1944f48c14597e (diff)
downloadansible-testing.tar.gz
Testing threading hang fixestesting
Diffstat (limited to 'lib/ansible/executor/action_write_locks.py')
-rw-r--r--lib/ansible/executor/action_write_locks.py5
1 files changed, 4 insertions, 1 deletions
diff --git a/lib/ansible/executor/action_write_locks.py b/lib/ansible/executor/action_write_locks.py
index 413d56d9d7..124904391f 100644
--- a/lib/ansible/executor/action_write_locks.py
+++ b/lib/ansible/executor/action_write_locks.py
@@ -20,6 +20,7 @@ from __future__ import (absolute_import, division, print_function)
__metaclass__ = type
from multiprocessing import Lock
+from multiprocessing.util import register_after_fork
from ansible.module_utils.facts import Facts
if 'action_write_locks' not in globals():
@@ -39,5 +40,7 @@ if 'action_write_locks' not in globals():
mods = set(p['name'] for p in Facts.PKG_MGRS)
mods.update(('copy', 'file', 'setup', 'slurp', 'stat'))
for mod_name in mods:
- action_write_locks[mod_name] = Lock()
+ l = Lock()
+ action_write_locks[mod_name] = l
+ register_after_fork(l, l.release)