apache/dolphinscheduler · error · TaskException
Sqoop Task params check fail
Error message
Sqoop Task params check fail
What it means
After parsing SqoopParameters, init() calls sqoopParameters.checkParameters() to validate required fields for the chosen source/target combination. If validation fails, the task throws this TaskException.
Source
Thrown at dolphinscheduler-task-plugin/dolphinscheduler-task-sqoop/src/main/java/org/apache/dolphinscheduler/plugin/task/sqoop/SqoopTask.java:58
private SqoopTaskExecutionContext sqoopTaskExecutionContext;
public SqoopTask(TaskExecutionContext taskExecutionContext) {
super(taskExecutionContext);
this.taskExecutionContext = taskExecutionContext;
}
@Override
public void init() {
sqoopParameters =
JSONUtils.parseObject(taskExecutionContext.getTaskParams(), SqoopParameters.class);
log.info("Initialize sqoop task params {}", JSONUtils.toPrettyJsonString(sqoopParameters));
if (null == sqoopParameters) {
throw new TaskException("Sqoop Task params is null");
}
if (!sqoopParameters.checkParameters()) {
throw new TaskException("Sqoop Task params check fail");
}
sqoopTaskExecutionContext =
sqoopParameters.generateExtendedContext(taskExecutionContext.getResourceParametersHelper());
SensitiveDataConverter.addMaskPattern(SqoopConstants.SQOOP_PASSWORD_REGEX);
}
@Override
protected String getScript() {
// get sqoop scripts
SqoopJobGenerator generator = new SqoopJobGenerator();
return generator.generateSqoopJob(sqoopParameters, sqoopTaskExecutionContext);
}
@Override
public AbstractParameters getParameters() {View on GitHub (pinned to 02eac45a1b)
Solutions
- Review SqoopParameters.checkParameters() requirements for your source/target combination and fill all mandatory fields (datasource, table/query, target path, etc.)
- Re-open the Sqoop task in the UI and complete all required form fields
- Test the equivalent sqoop command manually to confirm all arguments are valid
Example fix
// before sourceType=HDFS, targetType=MYSQL, targetMysqlTableName="" // check fail // after sourceType=HDFS, targetType=MYSQL, targetMysqlTableName="user_events", targetMysqlColumns="id,name"
Defensive patterns
Strategy: validation
Validate before calling
SqoopParameters p = JSONUtils.parseObject(taskParams, SqoopParameters.class);
if (p == null || !p.checkParameters()) {
throw new IllegalStateException("Sqoop params incomplete for source/target combination");
} Try / catch
try {
sqoopTask.init();
} catch (TaskException e) {
if (e.getMessage().equals("Sqoop Task params check fail")) {
// complete required source/target fields in the task form
}
} Prevention
- Fill all mandatory Sqoop form fields for the chosen source/target types
- Test the equivalent sqoop command manually first
- Re-check params after copying tasks between workflows
When it happens
Trigger: checkParameters() returns false because required fields for the configured source/target type are missing or invalid (e.g. empty source/target type, missing connection params, missing table/query for the selected job type).
Common situations: Selecting a source (e.g. HDFS) but leaving exportDir empty; choosing MySQL source without datasource/tableName; partially filled Sqoop form after copy-pasting a task node; version changes in required fields.
Understand the failure class
Background: Schema validation failed / invalid input schema: payload rejected because its shape doesn't match the expected schema — this error's family across 28 libraries.
Related errors
- dvc task params is not valid
- EMR Serverless task params are not valid
- emr task params is not valid
- flink task params is not valid
- flink task params is not valid
AI-assisted analysis of apache/dolphinscheduler@02eac45a1b (2026-09-06).
Data as JSON: /api/errors/3383da5bb3425585.
Report an issue: GitHub.