You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@superset.apache.org by mi...@apache.org on 2019/06/01 01:28:22 UTC
[incubator-superset] 08/13: [sql lab]revert #4833 (#7498)
This is an automated email from the ASF dual-hosted git repository.
michellet pushed a commit to branch release--0.33
in repository https://gitbox.apache.org/repos/asf/incubator-superset.git
commit 1e7f30fb45f24f8dc1ef8460eb41e8c30e48f402
Author: Grace Guo <gr...@airbnb.com>
AuthorDate: Thu May 23 17:39:40 2019 -0700
[sql lab]revert #4833 (#7498)
(cherry picked from commit 20143293eb9cac93a1692dcd552be5cb48b5d3e9)
---
superset/views/core.py | 48 ++++++++----------------------------------------
1 file changed, 8 insertions(+), 40 deletions(-)
diff --git a/superset/views/core.py b/superset/views/core.py
index 32cabad..8b621bc 100755
--- a/superset/views/core.py
+++ b/superset/views/core.py
@@ -21,7 +21,6 @@ import inspect
import logging
import os
import re
-import time
import traceback
from typing import List # noqa: F401
from urllib import parse
@@ -37,10 +36,8 @@ from flask_babel import gettext as __
from flask_babel import lazy_gettext as _
import pandas as pd
import simplejson as json
-import sqlalchemy as sqla
from sqlalchemy import (
- and_, Column, create_engine, ForeignKey, Integer, MetaData, or_, select, Table,
- update)
+ and_, Column, create_engine, ForeignKey, Integer, MetaData, or_, select, Table)
from sqlalchemy.engine.url import make_url
from sqlalchemy.exc import IntegrityError
from werkzeug.routing import BaseConverter
@@ -1840,7 +1837,7 @@ class Superset(BaseSupersetView):
M.Slice.id == M.Log.slice_id,
)
.filter(
- sqla.and_(
+ and_(
~M.Log.action.in_(('queries', 'shortner', 'sql_json')),
M.Log.user_id == user_id,
),
@@ -1910,7 +1907,7 @@ class Superset(BaseSupersetView):
)
.join(
models.FavStar,
- sqla.and_(
+ and_(
models.FavStar.user_id == int(user_id),
models.FavStar.class_name == 'Dashboard',
models.Dashboard.id == models.FavStar.obj_id,
@@ -1948,7 +1945,7 @@ class Superset(BaseSupersetView):
Dash,
)
.filter(
- sqla.or_(
+ or_(
Dash.created_by_fk == user_id,
Dash.changed_by_fk == user_id,
),
@@ -1981,13 +1978,13 @@ class Superset(BaseSupersetView):
db.session.query(Slice,
FavStar.dttm).join(
models.FavStar,
- sqla.and_(
+ and_(
models.FavStar.user_id == int(user_id),
models.FavStar.class_name == 'slice',
models.Slice.id == models.FavStar.obj_id,
),
isouter=True).filter(
- sqla.or_(
+ or_(
Slice.created_by_fk == user_id,
Slice.changed_by_fk == user_id,
FavStar.user_id == user_id,
@@ -2018,7 +2015,7 @@ class Superset(BaseSupersetView):
qry = (
db.session.query(Slice)
.filter(
- sqla.or_(
+ or_(
Slice.created_by_fk == user_id,
Slice.changed_by_fk == user_id,
),
@@ -2050,7 +2047,7 @@ class Superset(BaseSupersetView):
)
.join(
models.FavStar,
- sqla.and_(
+ and_(
models.FavStar.user_id == int(user_id),
models.FavStar.class_name == 'slice',
models.Slice.id == models.FavStar.obj_id,
@@ -2728,35 +2725,6 @@ class Superset(BaseSupersetView):
.all()
)
dict_queries = {q.client_id: q.to_dict() for q in sql_queries}
-
- now = int(round(time.time() * 1000))
-
- unfinished_states = [
- QueryStatus.PENDING,
- QueryStatus.RUNNING,
- ]
-
- queries_to_timeout = [
- client_id for client_id, query_dict in dict_queries.items()
- if (
- query_dict['state'] in unfinished_states and (
- now - query_dict['startDttm'] >
- config.get('SQLLAB_ASYNC_TIME_LIMIT_SEC') * 1000
- )
- )
- ]
-
- if queries_to_timeout:
- update(Query).where(
- and_(
- Query.user_id == g.user.get_id(),
- Query.client_id in queries_to_timeout,
- ),
- ).values(state=QueryStatus.TIMED_OUT)
-
- for client_id in queries_to_timeout:
- dict_queries[client_id]['status'] = QueryStatus.TIMED_OUT
-
return json_success(
json.dumps(dict_queries, default=utils.json_int_dttm_ser))