apache/dolphinscheduler · error · TaskException
procedure task params is not valid
Error message
procedure task params is not valid
What it means
A parameter validation guard in the ProcedureTask constructor: procedureParameters is null after parsing taskParams, or checkParameters() found required fields missing — the stored procedure method (procedureName/ methods mapping) or datasource is unset. The offending input is the taskParams JSON; failure occurs at task construction, before any JDBC connection is opened.
Source
Thrown at dolphinscheduler-task-plugin/dolphinscheduler-task-procedure/src/main/java/org/apache/dolphinscheduler/plugin/task/procedure/ProcedureTask.java:76
private final TaskExecutionContext taskExecutionContext;
private final ProcedureTaskExecutionContext procedureTaskExecutionContext;
private volatile Statement sessionStatement;
public ProcedureTask(TaskExecutionContext taskExecutionContext) {
super(taskExecutionContext);
this.taskExecutionContext = taskExecutionContext;
this.procedureParameters =
JSONUtils.parseObject(taskExecutionContext.getTaskParams(), ProcedureParameters.class);
log.info("Initialize procedure task params {}", JSONUtils.toPrettyJsonString(procedureParameters));
// check parameters
if (procedureParameters == null || !procedureParameters.checkParameters()) {
throw new TaskException("procedure task params is not valid");
}
procedureTaskExecutionContext =
procedureParameters.generateExtendedContext(taskExecutionContext.getResourceParametersHelper());
}
@Override
public void handle(TaskCallBack taskCallBack) throws TaskException {
log.info("procedure type : {}, datasource : {}, method : {} , localParams : {}",
procedureParameters.getType(),
procedureParameters.getDatasource(),
procedureParameters.getMethod(),
procedureParameters.getLocalParams());
DbType dbType = DbType.valueOf(procedureParameters.getType());
DataSourceProcessor dataSourceProcessor = DataSourcePluginManager.getDataSourceProcessor(dbType);
ConnectionParam connectionParams =
dataSourceProcessor.createConnectionParams(procedureTaskExecutionContext.getConnectionParams());View on GitHub (pinned to 02eac45a1b)
Solutions
- Complete the required stored-procedure fields (method, datasource) in the task definition
- Ensure taskParams JSON deserializes into ProcedureParameters — check field names
- Validate on save in the UI
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at dolphinscheduler-task-plugin/dolphinscheduler-task-procedure/src/main/java/org/apache/dolphinscheduler/plugin/task/procedure/ProcedureTask.java:76 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of apache/dolphinscheduler@02eac45a1b (2026-09-06).
Data as JSON: /api/errors/3c810fed456d0942.
Report an issue: GitHub.