This is an automated email from the ASF dual-hosted git repository. beto pushed a commit to branch fix-athena-nan in repository https://gitbox.apache.org/repos/asf/superset.git
commit 7b8f11718ffe9eccfebfcb638419c4d798b48a66 Author: Beto Dealmeida <[email protected]> AuthorDate: Wed Jan 31 21:18:01 2024 -0500 fix: column values with NaN --- superset/models/helpers.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/superset/models/helpers.py b/superset/models/helpers.py index fa2c9b8102..9322e8c46d 100644 --- a/superset/models/helpers.py +++ b/superset/models/helpers.py @@ -1340,7 +1340,10 @@ class ExploreMixin: # pylint: disable=too-many-public-methods return and_(*l) def values_for_column( - self, column_name: str, limit: int = 10000, denormalize_column: bool = False + self, + column_name: str, + limit: int = 10000, + denormalize_column: bool = False, ) -> list[Any]: # denormalize column name before querying for values # unless disabled in the dataset configuration @@ -1378,6 +1381,8 @@ class ExploreMixin: # pylint: disable=too-many-public-methods sql = self.mutate_query_from_config(sql) df = pd.read_sql_query(sql=sql, con=engine) + # replace NaN with None to ensure it can be serialized to JSON + df = df.replace({np.nan: None}) return df["column_values"].to_list() def get_timestamp_expression(
