Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
make iterating over sys.modules threadsafe
Despite creating a copy through list(sys.modules.items()) there is a possible race condition if another thread is adding to sys.modules File "x/lib/python3.7/pickle.py", line 774, in save_tuple save(element) File "x/lib/python3.7/pickle.py", line 549, in save self.save_reduce(obj=obj, *rv) File "x/lib/python3.7/pickle.py", line 637, in save_reduce save(func) File "x/lib/python3.7/pickle.py", line 518, in save self.save_global(obj) File "x/lib/python3.7/site-packages/cloudpickle/cloudpickle.py", line 876, in save_global elif not _is_global(obj, name=name): File "x/lib/python3.7/site-packages/cloudpickle/cloudpickle.py", line 174, in _is_global module_name = _whichmodule(obj, name) File "x/lib/python3.7/site-packages/cloudpickle/cloudpickle.py", line 156, in _whichmodule for module_name, module in list(sys.modules.items()): RuntimeError: dictionary changed size during iteration
- Loading branch information