Skip to content
This repository has been archived by the owner on Jun 16, 2023. It is now read-only.

Missing dependency on python-concurrent.futures #597

Closed
wwentland opened this issue Oct 30, 2018 · 1 comment
Closed

Missing dependency on python-concurrent.futures #597

wwentland opened this issue Oct 30, 2018 · 1 comment

Comments

@wwentland
Copy link

wwentland commented Oct 30, 2018

Hi,

when installing the newest version (i.e. 2018.3.3) of salt-minion we observed ImportErrors when the service is restarted. This error will fill up logs quite rapidly and might thereby cause issues in production.

The problem is probably due to changes introduced in saltstack/salt@70c6034 which imports the concurrent module. The salt packaging has not been adjusted accordingly and therefore does not ensure that the concurrent Python module is pulled in via suitable dependencies.

On Debian Stretch the installation of python-concurrent.futures provides a suitable workaround.

Salt Version

# apt-cache policy salt-minion
salt-minion:
  Installed: 2018.3.3+ds-2
  Candidate: 2018.3.3+ds-2
  Version table:
 *** 2018.3.3+ds-2 500
        500 http://repo.saltstack.com/apt/debian/9/amd64/2018.3 stretch/main amd64 Packages
        100 /var/lib/dpkg/status
     2016.11.2+ds-1+deb9u2 500
        500 http://deb.debian.org/debian stretch/main amd64 Packages

# salt --versions-report
Salt Version:
           Salt: 2018.3.3
 
Dependency Versions:
           cffi: Not Installed
       cherrypy: Not Installed
       dateutil: 2.5.3
      docker-py: Not Installed
          gitdb: 2.0.0
      gitpython: 2.1.1
          ioflo: Not Installed
         Jinja2: 2.9.4
        libgit2: Not Installed
        libnacl: Not Installed
       M2Crypto: Not Installed
           Mako: Not Installed
   msgpack-pure: Not Installed
 msgpack-python: 0.4.8
   mysql-python: Not Installed
      pycparser: Not Installed
       pycrypto: 2.6.1
   pycryptodome: Not Installed
         pygit2: Not Installed
         Python: 2.7.13 (default, Sep 26 2018, 18:42:22)
   python-gnupg: Not Installed
         PyYAML: 3.12
          PyZMQ: 16.0.2
           RAET: Not Installed
          smmap: 2.0.1
        timelib: Not Installed
        Tornado: 4.4.3
            ZMQ: 4.2.1
 
System Versions:
           dist: debian 9.5 
         locale: UTF-8
        machine: x86_64
        release: 4.9.0-5-amd64
         system: Linux
        version: debian 9.5 

Log Output

salt-minion[3457]: Traceback (most recent call last):
salt-minion[3457]:   File "/usr/lib/python2.7/dist-packages/salt/minion.py", line 997, in _connect_minion
salt-minion[3457]:     yield minion.connect_master(failed=failed)
salt-minion[3457]:   File "/usr/lib/python2.7/dist-packages/tornado/gen.py", line 1015, in run
salt-minion[3457]:     value = future.result()
salt-minion[3457]:   File "/usr/lib/python2.7/dist-packages/tornado/concurrent.py", line 237, in result
salt-minion[3457]:     raise_exc_info(self._exc_info)
salt-minion[3457]:   File "/usr/lib/python2.7/dist-packages/tornado/gen.py", line 1021, in run
salt-minion[3457]:     yielded = self.gen.throw(*exc_info)
salt-minion[3457]:   File "/usr/lib/python2.7/dist-packages/salt/minion.py", line 1188, in connect_master
salt-minion[3457]:     master, self.pub_channel = yield self.eval_master(self.opts, self.timeout, self.safe, failed)
salt-minion[3457]:   File "/usr/lib/python2.7/dist-packages/tornado/gen.py", line 1015, in run
salt-minion[3457]:     value = future.result()
salt-minion[3457]:   File "/usr/lib/python2.7/dist-packages/tornado/concurrent.py", line 237, in result
salt-minion[3457]:     raise_exc_info(self._exc_info)
salt-minion[3457]:   File "/usr/lib/python2.7/dist-packages/tornado/gen.py", line 285, in wrapper
salt-minion[3457]:     yielded = next(result)
salt-minion[3457]:   File "/usr/lib/python2.7/dist-packages/salt/minion.py", line 697, in eval_master
salt-minion[3457]:     pub_channel = salt.transport.client.AsyncPubChannel.factory(self.opts, **factory_kwargs)
salt-minion[3457]:   File "/usr/lib/python2.7/dist-packages/salt/transport/client.py", line 161, in factory
salt-minion[3457]:     import salt.transport.zeromq
salt-minion[3457]:   File "/usr/lib/python2.7/dist-packages/salt/transport/zeromq.py", line 31, in <module>
salt-minion[3457]:     import salt.transport.mixins.auth
salt-minion[3457]:   File "/usr/lib/python2.7/dist-packages/salt/transport/mixins/auth.py", line 16, in <module>
salt-minion[3457]:     import salt.master
salt-minion[3457]:   File "/usr/lib/python2.7/dist-packages/salt/master.py", line 35, in <module>
salt-minion[3457]:     import salt.client.ssh.client
salt-minion[3457]:   File "/usr/lib/python2.7/dist-packages/salt/client/ssh/__init__.py", line 47, in <module>
salt-minion[3457]:     import salt.utils.thin
salt-minion[3457]:   File "/usr/lib/python2.7/dist-packages/salt/utils/thin.py", line 16, in <module>
salt-minion[3457]:     import concurrent
salt-minion[3457]: ImportError: No module named concurrent
@wwentland
Copy link
Author

Addressed in #593

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant