apache/superset · error · AlertValidatorConfigError
Alert validator config error.
Error message
Alert validator config error.
What it means
Error "Alert validator config error." thrown in apache/superset.
Source
Thrown at superset/commands/report/alert.py:118
self._report_schedule.last_value = self._result
try:
config = json.loads(self._report_schedule.validator_config_json)
operator = config["op"]
threshold = config["threshold"]
# Return False for None results to prevent false alert triggers
if self._result is None:
logger.debug(
"Alert not triggered (NULL result) for report_schedule_id=%s, "
"execution_id=%s, message=%s",
self._report_schedule.id,
self._execution_id,
self._info_message,
)
return (False, self._info_message)
triggered = OPERATOR_FUNCTIONS[operator](self._result, threshold)
return (triggered, None)
except (KeyError, json.JSONDecodeError) as ex:
raise AlertValidatorConfigError() from ex
def _validate_not_null(self, rows: np.recarray[Any, Any]) -> None:
self._validate_result(rows)
value = rows[0][1]
# Normalize NULL/NaN to None for consistency with _validate_operator
if value is None or pd.isna(value):
self._result = None
self._info_message = "Query returned NULL value"
return
self._result = value
@staticmethod
def _validate_result(rows: np.recarray[Any, Any]) -> None:
# check if query return more than one row
if len(rows) > 1:
raise AlertQueryMultipleRowsError(
message=_(
"Alert query returned more than one row. %(num_rows)s rows returned", # noqa: E501View on GitHub (pinned to f4587218dd)
Solutions
- Fix the alert validator configuration in the report schedule (valid JSON, correct operator and threshold).
- Review ALERT_REPORTS validator settings in the server configuration.
When it happens
Trigger: An alert is executed with a malformed validator configuration.
Common situations: Running an alert whose configured validator name does not match any registered validator.
AI-assisted analysis of apache/superset@f4587218dd (2026-08-14).
Data as JSON: /api/errors/dec863b1b55f82a3.
Report an issue: GitHub.