You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@superset.apache.org by GitBox <gi...@apache.org> on 2019/01/02 19:20:09 UTC
[GitHub] conglei commented on a change in pull request #6524: [SIP 6]
Querycontext improvement
conglei commented on a change in pull request #6524: [SIP 6] Querycontext improvement
URL: https://github.com/apache/incubator-superset/pull/6524#discussion_r244827152
##########
File path: superset/common/query_context.py
##########
@@ -1,27 +1,244 @@
-# pylint: disable=R
+# pylint: disable=C,R,W
+from datetime import datetime, timedelta
+import logging
+import pickle as pkl
+import traceback
from typing import Dict, List
+import numpy as np
+import pandas as pd
+
+from superset import app, cache
from superset import db
from superset.connectors.connector_registry import ConnectorRegistry
+from superset.utils import core as utils
+from superset.utils.core import DTTM_ALIAS
from .query_object import QueryObject
+config = app.config
+stats_logger = config.get('STATS_LOGGER')
+
class QueryContext:
"""
The query context contains the query object and additional fields necessary
to retrieve the data payload for a given viz.
"""
+
+ default_fillna = 0
+ cache_type = 'df'
+ enforce_numerical_metrics = True
+
# TODO: Type datasource and query_object dictionary with TypedDict when it becomes
# a vanilla python type https://github.com/python/mypy/issues/5288
def __init__(
self,
datasource: Dict,
queries: List[Dict],
+ force: bool = False,
+ custom_cache_timeout: int = None,
):
self.datasource = ConnectorRegistry.get_datasource(datasource.get('type'),
int(datasource.get('id')),
db.session)
self.queries = list(map(lambda query_obj: QueryObject(**query_obj), queries))
- def get_data(self):
- raise NotImplementedError()
+ self.force = force
+
+ self.custom_cache_timeout = custom_cache_timeout
+
+ self.enforce_numerical_metrics = True
+
+ def get_query_result(self, query_object):
Review comment:
Yes, I agree that there should be as little duplicated code as possible. Basically this branch is more for a POC. This branch won't be merged master until this issue is resolved.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
With regards,
Apache Git Services
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For additional commands, e-mail: notifications-help@superset.apache.org