I ported the fix from https://github.com/python/cpython/commit/6daa37fd42c5d5300172728e8b4de74fe0b319fc for 3.6 and 3.8 shipped with SLE 15SP2 and openSUSE Tumbleweed, but it seems that this fix doesn't help.
I have a deadlocks on running `salt-api` process managing `salt-ssh` systems with high workload. The service can get the deadlock in first 5 minutes or after 3-60 minutes of running the service with the same workload with almost equal chances.
Here is the part of py-bt I see each time:
(gdb) py-bt
Traceback (most recent call first):
File "<frozen importlib._bootstrap>", line 107, in acquire
File "<frozen importlib._bootstrap>", line 158, in __enter__
File "<frozen importlib._bootstrap>", line 595, in _exec
File "<frozen importlib._bootstrap>", line 271, in _load_module_shim
File "<frozen importlib._bootstrap_external>", line 852, in load_module
File "<frozen importlib._bootstrap_external>", line 1027, in load_module
File "<frozen importlib._bootstrap_external>", line 1034, in _check_name_wrapper
File "/usr/lib/python3.8/site-packages/salt/loader.py", line 4779, in _load_module
File "/usr/lib/python3.8/site-packages/salt/loader.py", line 1926, in _inner_load
if self._load_module(name) and key in self._dict:
File "/usr/lib/python3.8/site-packages/salt/loader.py", line 2193, in _load
File "/usr/lib/python3.8/site-packages/salt/utils/lazy.py", line 99, in __getitem__
if self._load(key):
File "/usr/lib/python3.8/site-packages/salt/loader.py", line 1283, in __getitem__
func = super().__getitem__(item)
File "/usr/lib/python3.8/site-packages/salt/loader.py", line 1139, in __getitem__
return self._dict[key + self.suffix]
File "/usr/lib/python3.8/site-packages/salt/template.py", line 495, in check_render_pipe_str
File "/usr/lib/python3.8/site-packages/salt/loader.py", line 1428, in render
f_noext,
File "/usr/lib/python3.8/site-packages/salt/pillar/__init__.py", line 781, in __init__
...
|