question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

No combination of requirements work for Superset 0.29_ + Snowflake (because of Botocore)

See original GitHub issue

Due to the boto/botocore version range set in Superset’s requirement, it is currently incompatible with any version of SQLAlchemy-Snowflake. As Snowflake is one of our core DBs we connect to, this makes Superset unusable past version 0.27.

  • I have checked the superset logs for python stacktraces and included it here as text if there are any.
  • I have reproduced the issue with at least the latest released version of superset.
  • I have checked the issue tracker for the same issue and I haven’t found one similar.

Superset version

superset==0.29.0rc7

Full requirements: markdown==3.0 superset==0.29.0rc7 gunicorn==19.8.0 setuptools Flask-OAuthlib==0.9.5 psycopg2==2.7.4 psycopg2-binary==2.7.5 gevent==1.3.6 redis==2.10.6 flower==0.9.2 Flask-SSLify==0.1.5 snowflake-sqlalchemy==1.1.4

Expected results

Navigating to a dashboard should load.

Actual results

Stack Trace: Stacktrace Traceback (most recent call last): File "/env/lib/python3.6/site-packages/flask/app.py", line 2292, in wsgi_app response = self.full_dispatch_request() File "/env/lib/python3.6/site-packages/flask/app.py", line 1815, in full_dispatch_request rv = self.handle_user_exception(e) File "/env/lib/python3.6/site-packages/flask/app.py", line 1718, in handle_user_exception reraise(exc_type, exc_value, tb) File "/env/lib/python3.6/site-packages/flask/_compat.py", line 35, in reraise raise value File "/env/lib/python3.6/site-packages/flask/app.py", line 1813, in full_dispatch_request rv = self.dispatch_request() File "/env/lib/python3.6/site-packages/flask/app.py", line 1799, in dispatch_request return self.view_functions[rule.endpoint](**req.view_args) File "/env/lib/python3.6/site-packages/flask_appbuilder/security/decorators.py", line 26, in wraps return f(self, *args, **kwargs) File "/env/lib/python3.6/site-packages/superset/views/core.py", line 2154, in dashboard 'datasources': {ds.uid: ds.data for ds in datasources}, File "/env/lib/python3.6/site-packages/superset/views/core.py", line 2154, in <dictcomp> 'datasources': {ds.uid: ds.data for ds in datasources}, File "/env/lib/python3.6/site-packages/superset/connectors/sqla/models.py", line 411, in data d = super(SqlaTable, self).data File "/env/lib/python3.6/site-packages/superset/connectors/base/models.py", line 210, in data 'select_star': self.select_star, File "/env/lib/python3.6/site-packages/superset/connectors/sqla/models.py", line 401, in select_star self.name, show_cols=False, latest_partition=False) File "/env/lib/python3.6/site-packages/superset/models/core.py", line 847, in select_star eng = self.get_sqla_engine(schema=schema) File "/env/lib/python3.6/site-packages/superset/utils/core.py", line 93, in __call__ value = self.func(*args, **kwargs) File "/env/lib/python3.6/site-packages/superset/models/core.py", line 785, in get_sqla_engine return create_engine(url, **params) File "/env/lib/python3.6/site-packages/sqlalchemy/engine/__init__.py", line 425, in create_engine return strategy.create(*args, **kwargs) File "/env/lib/python3.6/site-packages/sqlalchemy/engine/strategies.py", line 57, in create entrypoint = u._get_entrypoint() File "/env/lib/python3.6/site-packages/sqlalchemy/engine/url.py", line 156, in _get_entrypoint cls = registry.load(name) File "/env/lib/python3.6/site-packages/sqlalchemy/util/langhelpers.py", line 217, in load return impl.load() File "/env/lib/python3.6/site-packages/pkg_resources/__init__.py", line 2321, in load self.require(*args, **kwargs) File "/env/lib/python3.6/site-packages/pkg_resources/__init__.py", line 2344, in require items = working_set.resolve(reqs, env, installer, extras=self.extras) File "/env/lib/python3.6/site-packages/pkg_resources/__init__.py", line 783, in resolve raise VersionConflict(dist, req).with_context(dependent_req) pkg_resources.ContextualVersionConflict: (botocore 1.7.48 (/env/lib/python3.6/site-packages), Requirement.parse('botocore<1.13.0,>=1.12.66'), {'boto3'})

Steps to reproduce

Install Superset with the following requirements file markdown==3.0 superset==0.29.0rc7 gunicorn==19.8.0 setuptools Flask-OAuthlib==0.9.5 psycopg2==2.7.4 psycopg2-binary==2.7.5 gevent==1.3.6 redis==2.10.6 flower==0.9.2 Flask-SSLify==0.1.5 snowflake-sqlalchemy==1.1.4

(Or any version of Snowflake SqlAlchemy)

Navigate to any existing dashboard.

Issue Analytics

  • State:closed
  • Created 5 years ago
  • Comments:5 (3 by maintainers)

github_iconTop GitHub Comments

1reaction
villebrocommented, Dec 17, 2018

The pending PR #5827 should also help with timeseries that are currently broken on Snowflake.

1reaction
mistercrunchcommented, Dec 17, 2018
Read more comments on GitHub >

github_iconTop Results From Across the Web

No combination of requirements work for Superset 0.29_ + ...
Due to the boto/botocore version range set in Superset's requirement, it is currently incompatible with any version of SQLAlchemy-Snowflake.
Read more >
Snowflake - Apache Superset
The connection string for Snowflake looks like this: ... The schema is not necessary in the connection string, as it is defined per...
Read more >
Installation & Configuration - apache-superset - Read the Docs
Install and Deploy Superset Locally with Docker. To try Superset locally, the best-supported currently method is via Docker, using docker-compose . Superset ......
Read more >
facebook.co, Code Example - Code Grepper
You might be seeing this error because you're using the wrong Compose file ... has requirement botocore<1.25.0,>=1.24.15, but you'll have botocore 1.27.17 ...
Read more >
superset - PyPI
A modern, enterprise-ready business intelligence web application.
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found