Odoo won’t start after pysftp installed

Environment

  • UBUNTU 16.04
  • Odoo 9

Problem

Today I came across the situation where after installing pysftp suddenly I won’t be able to start odoo again. I have tried to do

service odoo restart
service odoo stop ; service odoo start

When I have tried to uninstall pysftp, I was having SSL_ST_INIT error

root@erp:~# pip uninstall pysftp
Traceback (most recent call last):
 File "/usr/bin/pip", line 9, in <module>
 from pip import main
 File "/usr/lib/python2.7/dist-packages/pip/__init__.py", line 13, in <module>
 from pip.exceptions import InstallationError, CommandError, PipError
 File "/usr/lib/python2.7/dist-packages/pip/exceptions.py", line 6, in <module>
 from pip._vendor.six import iteritems
 File "/usr/lib/python2.7/dist-packages/pip/_vendor/__init__.py", line 64, in <module>
 vendored("cachecontrol")
 File "/usr/lib/python2.7/dist-packages/pip/_vendor/__init__.py", line 36, in vendored
 __import__(modulename, globals(), locals(), level=0)
 File "/usr/share/python-wheels/CacheControl-0.11.5-py2.py3-none-any.whl/cachecontrol/__init__.py", line 9, in <module>
 File "/usr/share/python-wheels/CacheControl-0.11.5-py2.py3-none-any.whl/cachecontrol/wrapper.py", line 1, in <module>
 File "/usr/share/python-wheels/CacheControl-0.11.5-py2.py3-none-any.whl/cachecontrol/adapter.py", line 3, in <module>
 File "/usr/share/python-wheels/requests-2.9.1-py2.py3-none-any.whl/requests/__init__.py", line 53, in <module>
 File "/usr/share/python-wheels/urllib3-1.13.1-py2.py3-none-any.whl/urllib3/contrib/pyopenssl.py", line 54, in <module>
 File "/usr/lib/python2.7/dist-packages/OpenSSL/__init__.py", line 8, in <module>
 from OpenSSL import rand, crypto, SSL
 File "/usr/lib/python2.7/dist-packages/OpenSSL/SSL.py", line 118, in <module>
 SSL_ST_INIT = _lib.SSL_ST_INIT
AttributeError: 'module' object has no attribute 'SSL_ST_INIT'

Solution

Step 1: Backup existing directory on OpenSSL and pyOpenSSL from dist-packages folder.

cp -r /usr/lib/python2.7/dist-packages/OpenSSL /tmp/
cp -r /usr/lib/python2.7/dist-packages/pyOpenSSL-0.15.1.egg-info /tmp/

Step 2: Remove directory OpenSSL and pyOpenSSL from dist-packages folder and install pyopenssl module

# rm -rf /usr/lib/python2.7/dist-packages/OpenSSL 
# rm -rf /usr/lib/python2.7/dist-packages/pyOpenSSL-0.15.1.egg-info 
# sudo pip install pyopenssl

Step 3: Start odoo service.

Leave a Reply

Your email address will not be published. Required fields are marked *