|
|
@@ -204,28 +204,20 @@ class FlinkSqlApi(Api):
|
|
|
def autocomplete(self, snippet, database=None, table=None, column=None, nested=None):
|
|
|
response = {}
|
|
|
|
|
|
- try:
|
|
|
- if database is None:
|
|
|
- response['databases'] = self.show_databases()
|
|
|
- elif table is None:
|
|
|
- response['tables_meta'] = self.show_tables(database)
|
|
|
- elif column is None:
|
|
|
- columns = self.get_columns(database, table)
|
|
|
- response['columns'] = [col['name'] for col in columns]
|
|
|
- response['extended_columns'] = [{
|
|
|
- 'comment': col.get('comment'),
|
|
|
- 'name': col.get('name'),
|
|
|
- 'type': col['type']
|
|
|
- }
|
|
|
- for col in columns
|
|
|
- ]
|
|
|
- else:
|
|
|
- response = {}
|
|
|
-
|
|
|
- except Exception as e:
|
|
|
- LOG.warn('Autocomplete data fetching error: %s' % e)
|
|
|
- response['code'] = 500
|
|
|
- response['error'] = str(e)
|
|
|
+ if database is None:
|
|
|
+ response['databases'] = self.show_databases()
|
|
|
+ elif table is None:
|
|
|
+ response['tables_meta'] = self.show_tables(database)
|
|
|
+ elif column is None:
|
|
|
+ columns = self.get_columns(database, table)
|
|
|
+ response['columns'] = [col['name'] for col in columns]
|
|
|
+ response['extended_columns'] = [{
|
|
|
+ 'comment': col.get('comment'),
|
|
|
+ 'name': col.get('name'),
|
|
|
+ 'type': col['type']
|
|
|
+ }
|
|
|
+ for col in columns
|
|
|
+ ]
|
|
|
|
|
|
return response
|
|
|
|