Description of problem: Salt-minion fails to start after upgrade to F31 Version-Release number of selected component (if applicable): salt-minion-2019.2.1rc0-3.fc31.noarch python3-tornado-6.0.2-2.fc31.x86_64 How reproducible: Start service salt-minion after F31 upgrade Steps to Reproduce: 1. systemctl start salt-minion.service Actual results: salt-minion[56324]: ModuleNotFoundError: No module named 'tornado.stack_context' systemd[1]: salt-minion.service: Main process exited, code=exited, status=247/n/a systemd[1]: salt-minion.service: Failed with result 'oom-kill'.systemd[1]: salt-minion.service: Consumed 13min 11.123s CPU time. Expected results: Start success Additional info: --This loops endlessly until oom-killer cleans it up: Nov 03 13:04:20 localhost salt-minion[12961]: [CRITICAL] Unexpected error while connecting to salt Nov 03 13:04:20 localhost salt-minion[12961]: Traceback (most recent call last): Nov 03 13:04:20 localhost salt-minion[12961]: File "/usr/lib/python3.7/site-packages/salt/minion.py", line 1025, in _connect_minion Nov 03 13:04:20 localhost salt-minion[12961]: yield minion.connect_master(failed=failed) Nov 03 13:04:20 localhost salt-minion[12961]: File "/usr/lib64/python3.7/site-packages/tornado/gen.py", line 735, in run Nov 03 13:04:20 localhost salt-minion[12961]: value = future.result() Nov 03 13:04:20 localhost salt-minion[12961]: File "/usr/lib64/python3.7/site-packages/tornado/gen.py", line 742, in run salt-minion[12961]: yielded = self.gen.throw(*exc_info) # type: ignore salt-minion[12961]: File "/usr/lib/python3.7/site-packages/salt/minion.py", line 1224, in connect_master salt-minion[12961]: master, self.pub_channel = yield self.eval_master(self.opts, self.timeout, self.safe, failed) salt-minion[12961]: File "/usr/lib64/python3.7/site-packages/tornado/gen.py", line 735, in run salt-minion[12961]: value = future.result() salt-minion[12961]: File "/usr/lib64/python3.7/site-packages/tornado/gen.py", line 209, in wrapper salt-minion[12961]: yielded = next(result) salt-minion[12961]: File "/usr/lib/python3.7/site-packages/salt/minion.py", line 749, in eval_master salt-minion[12961]: pub_channel = salt.transport.client.AsyncPubChannel.factory(self.opts, **factory_kwargs) salt-minion[12961]: File "/usr/lib/python3.7/site-packages/salt/transport/client.py", line 174, in factory salt-minion[12961]: import salt.transport.zeromq salt-minion[12961]: File "/usr/lib/python3.7/site-packages/salt/transport/zeromq.py", line 36, in <module> salt-minion[12961]: import salt.transport.mixins.auth salt-minion[12961]: File "/usr/lib/python3.7/site-packages/salt/transport/mixins/auth.py", line 16, in <module> salt-minion[12961]: import salt.master salt-minion[12961]: File "/usr/lib/python3.7/site-packages/salt/master.py", line 41, in <module> salt-minion[12961]: import salt.runner salt-minion[12961]: File "/usr/lib/python3.7/site-packages/salt/runner.py", line 19, in <module> salt-minion[12961]: from salt.client import mixins salt-minion[12961]: File "/usr/lib/python3.7/site-packages/salt/client/mixins.py", line 36, in <module> salt-minion[12961]: import tornado.stack_context salt-minion[12961]: ModuleNotFoundError: No module named 'tornado.stack_context'
From https://www.tornadoweb.org/en/stable/releases/v5.1.0.html * Tornado 6.0 will drop support for Python 2.7 and 3.4. The minimum supported Python version will be 3.5.2. * The tornado.stack_context module is deprecated and will be removed in Tornado 6.0. Believing that I don't have anything else that requires tornado, here is a super hackish fix: As root: #Remove tornado package rpm -e --nodeps python3-tornado #install old tornado version from python repos pip3 install tornado==5.1.1 #I'm not smart enough to know why it works interactively but not within salt-minion, so have a couple links. ln -s /usr/local/lib64/python3.7/site-packages/tornado /usr/lib64/python3.7/site-packages ln -s /usr/local/lib64/python3.7/site-packages/tornado-5.1.1-py3.7.egg-info/ /usr/lib64/python3.7/site-packages
*** This bug has been marked as a duplicate of bug 1748170 ***