apache/dolphinscheduler · error · ServiceException
Unsupported executeType
Error message
Unsupported executeType: {0} What it means
This plain ServiceException is thrown by controlWorkflowInstance when the executeType received in a control (repeat/pause/stop) request falls outside the known switch cases. It means the caller supplied an executeType value the current code cannot handle, typically from an unexpected or mismatched client value.
Solutions
- Send a supported executeType value for the control endpoint (e.g. REPEAT_RUNNING, RECOVER_SUSPENDED_PROCESS, PAUSE, STOP).
- Check client/server version alignment so enum values match.
- Inspect the request body and correct the executeType field.
Example fix
// before
execute("RESTART", instanceId); // unsupported value
// after
execute("REPEAT_RUNNING", instanceId); Defensive patterns
Strategy: validation
Validate before calling
Set<String> supported = Set.of("REPEAT_RUNNING","RECOVER_SUSPENDED_PROCESS","PAUSE","STOP");
if (!supported.contains(executeType)) throw new IllegalArgumentException("unsupported executeType: " + executeType); Try / catch
try { controlWorkflowInstance(loginUser, instanceId, executeType); } catch (ServiceException e) { if (e.getMessage().startsWith("Unsupported executeType")) { /* correct the executeType value and resend */ } else throw e; } Prevention
- Use the enum/constant defined by the server, not raw strings.
- Keep client and server versions aligned.
- Validate request payloads against the API schema before sending.
When it happens
Trigger: Posting to the workflow instance control endpoint with an executeType not covered by the switch (anything other than the handled repeat-running / recover-suspended / pause / stop cases), e.g. a malformed or newer enum value.
Common situations: Older/newer client versions sending an executeType value added after this switch was written; manual API calls with a wrong or misspelled executeType string.
Understand the failure class
Background: Invalid enum value errors: "Unknown type", "Invalid scope", "must be one of" — when a string is not on the library's allowed list — this error's family across 23 libraries.
Related errors
AI-assisted analysis of apache/dolphinscheduler@02eac45a1b (2026-09-06).
Data as JSON: /api/errors/3b61d2f745b85e0d.
Report an issue: GitHub.
Appendix: source
Thrown at dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/impl/ExecutorServiceImpl.java:264
executorClient.recoverSuspendedWorkflowInstanceOperation()
.onWorkflowInstance(workflowInstance)
.byUser(loginUser)
.execute();
return;
case PAUSE:
executorClient.pauseWorkflowInstance()
.onWorkflowInstance(workflowInstance)
.byUser(loginUser)
.execute();
return;
case STOP:
executorClient.stopWorkflowInstance()
.onWorkflowInstance(workflowInstance)
.byUser(loginUser)
.execute();
return;
default:
throw new ServiceException("Unsupported executeType: " + executeType);
}
}
/**
* do action to execute task in workflow instance
*
* @param loginUser login user
* @param projectCode project code
* @param workflowInstanceId workflow instance id
* @param startNodeList start node list
* @param taskDependType task depend type
* @return execute result code
*/
@Override
public WorkflowExecuteResponse executeTask(User loginUser,
long projectCode,
Integer workflowInstanceId,
String startNodeList,View on GitHub (pinned to 02eac45a1b)