This is an automated email from the ASF dual-hosted git repository.
maximebeauchemin pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-superset.git
The following commit(s) were added to refs/heads/master by this push:
new feb15a3 fix the schema-fetching problem for impala in sql_lab (#3906)
feb15a3 is described below
commit feb15a30a286943d597f2e710a4a8193125ab5a3
Author: Yu Xiao <[email protected]>
AuthorDate: Wed Nov 22 02:28:31 2017 +0900
fix the schema-fetching problem for impala in sql_lab (#3906)
* fix the schema-fetching problem for impala in sql_lab
* delete redundant print
* remove blank lines...
* minior corrections
---
superset/db_engine_specs.py | 10 ++++++++++
superset/models/core.py | 2 +-
2 files changed, 11 insertions(+), 1 deletion(-)
diff --git a/superset/db_engine_specs.py b/superset/db_engine_specs.py
index 4b66fa1..37464e4 100644
--- a/superset/db_engine_specs.py
+++ b/superset/db_engine_specs.py
@@ -149,6 +149,10 @@ class BaseEngineSpec(object):
pass
@classmethod
+ def get_schema_names(cls, inspector):
+ return inspector.get_schema_names()
+
+ @classmethod
def get_table_names(cls, schema, inspector):
return sorted(inspector.get_table_names(schema))
@@ -1092,6 +1096,12 @@ class ImpalaEngineSpec(BaseEngineSpec):
return "{}'".format(dttm.strftime('%Y-%m-%d'))
return "'{}'".format(dttm.strftime('%Y-%m-%d %H:%M:%S'))
+ @classmethod
+ def get_schema_names(cls, inspector):
+ schemas = [row[0] for row in inspector.engine.execute('SHOW SCHEMAS')
+ if not row[0].startswith('_')]
+ return schemas
+
engines = {
o.engine: o for o in globals().values()
diff --git a/superset/models/core.py b/superset/models/core.py
index d2989d5..2996625 100644
--- a/superset/models/core.py
+++ b/superset/models/core.py
@@ -726,7 +726,7 @@ class Database(Model, AuditMixinNullable):
return views
def all_schema_names(self):
- return sorted(self.inspector.get_schema_names())
+ return sorted(self.db_engine_spec.get_schema_names(self.inspector))
@property
def db_engine_spec(self):
--
To stop receiving notification emails like this one, please contact
['"[email protected]" <[email protected]>'].