Skip to content

Commit

Permalink
Alternative fix for #7559 (#7575)
Browse files Browse the repository at this point in the history
* Alternative fix for #7559

Just an idea...

* logging
  • Loading branch information
mistercrunch authored Jun 1, 2019
1 parent 687f205 commit 4b5931f
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 8 deletions.
6 changes: 4 additions & 2 deletions superset/sql_lab.py
Original file line number Diff line number Diff line change
Expand Up @@ -269,7 +269,6 @@ def execute_sql_statements(
query.rows = cdf.size
query.progress = 100
query.set_extra_json_key('progress', None)
query.status = QueryStatus.SUCCESS
if query.select_as_cta:
query.select_sql = database.select_star(
query.tmp_table_name,
Expand All @@ -285,13 +284,14 @@ def execute_sql_statements(
selected_columns, data)

payload.update({
'status': query.status,
'status': QueryStatus.SUCCESS,
'data': data,
'columns': all_columns,
'selected_columns': selected_columns,
'expanded_columns': expanded_columns,
'query': query.to_dict(),
})
payload['query']['state'] = QueryStatus.SUCCESS

if store_results:
key = str(uuid.uuid4())
Expand All @@ -304,6 +304,8 @@ def execute_sql_statements(
cache_timeout = config.get('CACHE_DEFAULT_TIMEOUT', 0)
results_backend.set(key, zlib_compress(json_payload), cache_timeout)
query.results_key = key

query.status = QueryStatus.SUCCESS
session.commit()

if return_results:
Expand Down
12 changes: 6 additions & 6 deletions tests/celery_tests.py
Original file line number Diff line number Diff line change
Expand Up @@ -127,7 +127,7 @@ def run_sql(self, db_id, sql, client_id=None, cta='false', tmp_table='tmp',
),
)
self.logout()
return json.loads(resp.data.decode('utf-8'))
return json.loads(resp.data)

def test_run_sync_query_dont_exist(self):
main_db = get_main_database(db.session)
Expand All @@ -145,12 +145,12 @@ def test_run_sync_query_cta(self):
perm_name = 'can_sql_json'
sql_where = (
"SELECT name FROM ab_permission WHERE name='{}'".format(perm_name))
result2 = self.run_sql(
result = self.run_sql(
db_id, sql_where, '2', tmp_table=tmp_table_name, cta='true')
self.assertEqual(QueryStatus.SUCCESS, result2['query']['state'])
self.assertEqual([], result2['data'])
self.assertEqual([], result2['columns'])
query2 = self.get_query_by_id(result2['query']['serverId'])
self.assertEqual(QueryStatus.SUCCESS, result['query']['state'])
self.assertEqual([], result['data'])
self.assertEqual([], result['columns'])
query2 = self.get_query_by_id(result['query']['serverId'])

# Check the data in the tmp table.
if backend != 'postgresql':
Expand Down

0 comments on commit 4b5931f

Please sign in to comment.