ImportError: No module named 'cx_Oracle' - Python3.6

1,002 views
Skip to first unread message

Thirsty ForKnowledge

unread,
May 21, 2020, 5:53:57 PM5/21/20
to sqlalchemy
Hi,

I am having an issue where a flask application is crashing with a 500 Error. I upgraded from python 3.5 to 3.6 on linux:

Version info is as follows:

cx_Oracle==6.2.1
Flask==1.0.2
Flask-Bootstrap==3.3.7.1
Flask-CAS-fork==1.0.1
Flask-Migrate==2.5.2
Flask-SQLAlchemy==2.3.2
Flask-WTF==0.14.2
SQLAlchemy==1.2.5

The logs have the following trace:

ERROR:flask.app:Exception on /broadcast/ [GET]
 Traceback (most recent call last):
  File "/app/acsadmin-web/venv/lib/python3.6/site-packages/flask/app.py", line 2292, in wsgi_app
  response = self.full_dispatch_request()
  File "/app/acsadmin-web/venv/lib/python3.6/site-packages/flask/app.py", line 1815, in full_dispatch_request
  rv = self.handle_user_exception(e)
File "/app/acsadmin-web/venv/lib/python3.6/site-packages/flask/app.py", line 1718, in handle_user_exception
reraise(exc_type, exc_value, tb)
 File "/app/acsadmin-web/venv/lib/python3.6/site-packages/flask/_compat.py", line 35, in reraise
   raise value
 File "/app/acsadmin-web/venv/lib/python3.6/site-packages/flask/app.py", line 1813, in full_dispatch_request
   rv = self.dispatch_request()
  File "/app/acsadmin-web/venv/lib/python3.6/site-packages/flask/app.py", line 1799, in dispatch_request
    return self.view_functions[rule.endpoint](**req.view_args)
  File "/app/acsadmin-web/venv/lib/python3.6/site-packages/acs_util_app/common/decorators.py", line 50, in new_func
   return f(*args,**kwargs)
   File "/app/acsadmin-web/venv/lib/python3.6/site-packages/flask_cas/__init__.py", line 102, in wrap
  return function(*args, **kwargs)
  File "/app/acsadmin-web/venv/lib/python3.6/site-packages/acs_util_app/blueprints/broadcast/views.py", line 35, in index
    current_app.config["BROADCAST_ADMIN_ROLE"]
   File "/app/acsadmin-web/venv/lib/python3.6/site-packages/acs_util_app/blueprints/broadcast/views.py", line 43, in fetch_accounts
     results = session_execute(query, bind_key="canvas", uni=uni)
   File "/app/acsadmin-web/venv/lib/python3.6/site-packages/acs_util_app/common/db_utils.py", line 39, in session_execute
     bind=db.get_engine(current_app, bind_key))
  File "/app/acsadmin-web/venv/lib/python3.6/site-packages/flask_sqlalchemy/__init__.py", line 896, in get_engine
     return connector.get_engine()
   File "/app/acsadmin-web/venv/lib/python3.6/site-packages/flask_sqlalchemy/__init__.py", line 559, in get_engine
    self._engine = rv = sqlalchemy.create_engine(info, **options)
  File "/app/acsadmin-web/venv/lib64/python3.6/site-packages/sqlalchemy/engine/__init__.py", line 424, in create_engine
    return strategy.create(*args, **kwargs)
   File "/app/acsadmin-web/venv/lib64/python3.6/site-packages/sqlalchemy/engine/strategies.py", line 81, in create
    dbapi = dialect_cls.dbapi(**dbapi_args)
  File "/app/acsadmin-web/venv/lib64/python3.6/site-packages/sqlalchemy/dialects/oracle/cx_oracle.py", line 659, in dbapi
    import cx_Oracle
 ImportError: No module named 'cx_Oracle'

Thank you.

Jonathan Vanasco

unread,
May 22, 2020, 12:46:47 PM5/22/20
to sqlalchemy


On Thursday, May 21, 2020 at 5:53:57 PM UTC-4, Thirsty ForKnowledge wrote:
Hi,

I am having an issue where a flask application is crashing with a 500 Error. I upgraded from python 3.5 to 3.6 on linux:

 
When you upgrade Python, you need to (re)install all of the packages.   

Most likely, cx_Oracle was probably not listed as a dependency in your application, so it didn't install.

You can test this by opening a new Python interpreter for this virtual env and typing "import cx_Oracle". if it errors out, it is not installed.

Installing cx_Oracle into your 3.6 virtual environment should fix this.

Thirsty ForKnowledge

unread,
May 22, 2020, 1:13:57 PM5/22/20
to sqlalchemy
Hi Jonathan,

Thanks for your reply. 

I activated the venv and did an import of cx_Oracle. I had no issues:

(venv) -bash-4.2$ man tree
No manual entry for tree
(venv) -bash-4.2$ python3.6
Python 3.6.8 (default, Sep 26 2019, 11:57:09)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-39)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import cx_Oracle
Reply all
Reply to author
Forward
0 new messages