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

  1. Review SqoopParameters.checkParameters() requirements for your source/target combination and fill all mandatory fields (datasource, table/query, target path, etc.)
  2. Re-open the Sqoop task in the UI and complete all required form fields
  3. 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

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


AI-assisted analysis of apache/dolphinscheduler@02eac45a1b (2026-09-06). Data as JSON: /api/errors/3383da5bb3425585. Report an issue: GitHub.