diff --git a/superset/views/core.py b/superset/views/core.py index b60d91c485ca..feb8bb4911b7 100755 --- a/superset/views/core.py +++ b/superset/views/core.py @@ -5,7 +5,6 @@ from __future__ import unicode_literals from datetime import datetime, timedelta -import json import logging import os import re @@ -23,6 +22,7 @@ from flask_babel import gettext as __ from flask_babel import lazy_gettext as _ import pandas as pd +import simplejson as json from six import text_type import sqlalchemy as sqla from sqlalchemy import create_engine @@ -2326,7 +2326,8 @@ def results(self, key): payload_json = json.loads(payload) payload_json['data'] = payload_json['data'][:display_limit] return json_success( - json.dumps(payload_json, default=utils.json_iso_dttm_ser)) + json.dumps( + payload_json, default=utils.json_iso_dttm_ser, ignore_nan=True)) @has_access_api @expose('/stop_query/', methods=['POST']) @@ -2434,7 +2435,7 @@ def sql_json(self): resp = json_success(json.dumps( {'query': query.to_dict()}, default=utils.json_int_dttm_ser, - allow_nan=False), status=202) + ignore_nan=True), status=202) session.commit() return resp @@ -2452,7 +2453,7 @@ def sql_json(self): rendered_query, return_results=True) payload = json.dumps( - data, default=utils.pessimistic_json_iso_dttm_ser) + data, default=utils.pessimistic_json_iso_dttm_ser, ignore_nan=True) except Exception as e: logging.exception(e) return json_error_response('{}'.format(e))