<h3 dir="auto">Superset version</h3>
<p dir="auto">0.17.6</p>
<p dir="auto">when I in datasource list page, click the column header then return the error:</p>
<h3 dir="auto">error</h3>
<blockquote>
<p dir="auto">sqlalchemy.exc.OperationalError<br>
OperationalError: (sqlite3.OperationalError) no such column: backend [SQL: u'SELECT dbs.created_on AS dbs_created_on, dbs.changed_on AS dbs_changed_on, dbs.id AS dbs_id, dbs.verbose_name AS dbs_verbose_name, dbs.database_name AS dbs_database_name, dbs.sqlalchemy_uri AS dbs_sqlalchemy_uri, dbs.password AS dbs_password, dbs.cache_timeout AS dbs_cache_timeout, dbs.select_as_create_table_as AS dbs_select_as_create_table_as, dbs.expose_in_sqllab AS dbs_expose_in_sqllab, dbs.allow_run_sync AS dbs_allow_run_sync, dbs.allow_run_async AS dbs_allow_run_async, dbs.allow_ctas AS dbs_allow_ctas, dbs.allow_dml AS dbs_allow_dml, dbs.force_ctas_schema AS dbs_force_ctas_schema, dbs.extra AS dbs_extra, dbs.perm AS dbs_perm, dbs.changed_by_fk AS dbs_changed_by_fk, dbs.created_by_fk AS dbs_created_by_fk \nFROM dbs ORDER BY backend asc\n LIMIT ? OFFSET ?'] [parameters: (500, 0)]</p>
<p dir="auto">Traceback (most recent call last)<br>
File "/Library/Python/2.7/site-packages/flask/app.py", line 1997, in <strong>call</strong><br>
return self.wsgi_app(environ, start_response)<br>
File "/Library/Python/2.7/site-packages/flask/app.py", line 1985, in wsgi_app<br>
response = self.handle_exception(e)<br>
File "/Library/Python/2.7/site-packages/flask/app.py", line 1540, in handle_exception<br>
reraise(exc_type, exc_value, tb)<br>
File "/Library/Python/2.7/site-packages/flask/app.py", line 1982, in wsgi_app<br>
response = self.full_dispatch_request()<br>
File "/Library/Python/2.7/site-packages/flask/app.py", line 1614, in full_dispatch_request<br>
rv = self.handle_user_exception(e)<br>
File "/Library/Python/2.7/site-packages/flask/app.py", line 1517, in handle_user_exception<br>
reraise(exc_type, exc_value, tb)<br>
File "/Library/Python/2.7/site-packages/flask/app.py", line 1612, in full_dispatch_request<br>
rv = self.dispatch_request()<br>
File "/Library/Python/2.7/site-packages/flask/app.py", line 1598, in dispatch_request<br>
return self.view_functions<a href="**req.view_args">rule.endpoint</a><br>
File "/Library/Python/2.7/site-packages/flask_appbuilder/security/decorators.py", line 26, in wraps<br>
return f(self, *args, **kwargs)<br>
File "/Library/Python/2.7/site-packages/flask_appbuilder/views.py", line 450, in list<br>
widgets = self._list()<br>
File "/Library/Python/2.7/site-packages/flask_appbuilder/baseviews.py", line 870, in _list<br>
page_size=page_size)<br>
File "/Library/Python/2.7/site-packages/flask_appbuilder/baseviews.py", line 786, in _get_list_widget<br>
count, lst = self.datamodel.query(joined_filters, order_column, order_direction, page=page, page_size=page_size)<br>
File "/Library/Python/2.7/site-packages/flask_appbuilder/models/sqla/interface.py", line 112, in query<br>
return count, query.all()<br>
File "/Library/Python/2.7/site-packages/sqlalchemy/orm/query.py", line 2703, in all<br>
return list(self)<br>
File "/Library/Python/2.7/site-packages/sqlalchemy/orm/query.py", line 2855, in <strong>iter</strong><br>
return self._execute_and_instances(context)<br>
File "/Library/Python/2.7/site-packages/sqlalchemy/orm/query.py", line 2878, in _execute_and_instances<br>
result = conn.execute(querycontext.statement, self._params)<br>
File "/Library/Python/2.7/site-packages/sqlalchemy/engine/base.py", line 945, in execute<br>
return meth(self, multiparams, params)<br>
File "/Library/Python/2.7/site-packages/sqlalchemy/sql/elements.py", line 263, in _execute_on_connection<br>
return connection._execute_clauseelement(self, multiparams, params)<br>
File "/Library/Python/2.7/site-packages/sqlalchemy/engine/base.py", line 1053, in _execute_clauseelement<br>
compiled_sql, distilled_params<br>
File "/Library/Python/2.7/site-packages/sqlalchemy/engine/base.py", line 1189, in _execute_context<br>
context)<br>
File "/Library/Python/2.7/site-packages/sqlalchemy/engine/base.py", line 1402, in _handle_dbapi_exception<br>
exc_info<br>
File "/Library/Python/2.7/site-packages/sqlalchemy/util/compat.py", line 203, in raise_from_cause<br>
reraise(type(exception), exception, tb=exc_tb, cause=cause)<br>
File "/Library/Python/2.7/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context<br>
context)<br>
File "/Library/Python/2.7/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute<br>
cursor.execute(statement, parameters)</p>
</blockquote>
<p dir="auto">Sorting <code class="notranslate">Sources</code>-&gt;<code class="notranslate">Tables</code> by <code class="notranslate">Database</code> or <code class="notranslate">SQL Editor</code> returns an exception.</p>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="ProgrammingError: (_mysql_exceptions.ProgrammingError) 
(1064, &quot;You have an error in your SQL syntax; check the manual that corresponds to your MySQL 
server version for the right syntax to use near 'desc \n LIMIT 500' at line 2&quot;) 
[SQL: u'SELECT `tables`.created_on AS tables_created_on, `tables`.changed_on AS 
tables_changed_on, `tables`.id AS tables_id, `tables`.table_name AS tables_table_name, 
`tables`.main_dttm_col AS tables_main_dttm_col, `tables`.description AS tables_description, 
`tables`.default_endpoint AS tables_default_endpoint, `tables`.database_id AS tables_database_id,
`tables`.is_featured AS tables_is_featured, `tables`.annotation AS tables_annotation, 
`tables`.user_id AS tables_user_id, `tables`.offset AS tables_offset, `tables`.cache_timeout AS 
tables_cache_timeout, `tables`.`schema` AS tables_schema, `tables`.changed_by_fk AS 
tables_changed_by_fk, `tables`.created_by_fk AS tables_created_by_fk \nFROM `tables` ORDER BY 
database desc \n LIMIT %s'] [parameters: (500,)]"><pre class="notranslate"><code class="notranslate">ProgrammingError: (_mysql_exceptions.ProgrammingError) 
(1064, "You have an error in your SQL syntax; check the manual that corresponds to your MySQL 
server version for the right syntax to use near 'desc \n LIMIT 500' at line 2") 
[SQL: u'SELECT `tables`.created_on AS tables_created_on, `tables`.changed_on AS 
tables_changed_on, `tables`.id AS tables_id, `tables`.table_name AS tables_table_name, 
`tables`.main_dttm_col AS tables_main_dttm_col, `tables`.description AS tables_description, 
`tables`.default_endpoint AS tables_default_endpoint, `tables`.database_id AS tables_database_id,
`tables`.is_featured AS tables_is_featured, `tables`.annotation AS tables_annotation, 
`tables`.user_id AS tables_user_id, `tables`.offset AS tables_offset, `tables`.cache_timeout AS 
tables_cache_timeout, `tables`.`schema` AS tables_schema, `tables`.changed_by_fk AS 
tables_changed_by_fk, `tables`.created_by_fk AS tables_created_by_fk \nFROM `tables` ORDER BY 
database desc \n LIMIT %s'] [parameters: (500,)]
</code></pre></div>