From e7a5d0d01abee3612c6a1e124e2286989c5ad1f6 Mon Sep 17 00:00:00 2001 From: Yongjie Zhao Date: Tue, 19 Jan 2021 14:57:25 +0800 Subject: [PATCH] fix: return appropriate response when payload has error (#12575) --- superset/views/core.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/superset/views/core.py b/superset/views/core.py index 73b3e7aae1..0b717e9803 100755 --- a/superset/views/core.py +++ b/superset/views/core.py @@ -421,9 +421,10 @@ class Superset(BaseSupersetView): # pylint: disable=too-many-public-methods ) def get_raw_results(self, viz_obj: BaseViz) -> FlaskResponse: - return self.json_response( - {"data": viz_obj.get_df_payload()["df"].to_dict("records")} - ) + payload = viz_obj.get_df_payload() + if viz_obj.has_error(payload): + return json_error_response(payload=payload, status=400) + return self.json_response({"data": payload["df"].to_dict("records")}) def get_samples(self, viz_obj: BaseViz) -> FlaskResponse: return self.json_response({"data": viz_obj.get_samples()})