apache/dolphinscheduler · error · ServiceException
10134
10134
Error message
name must be not null
What it means
createTaskGroup requires a non-null group name; a null name fails with Status.NAME_NULL (code 10134) before any duplicate/size checks. The name is a mandatory identity attribute for a task group, so it is validated early and hard.
Source
Thrown at dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/impl/TaskGroupServiceImpl.java:86
private ProjectUserDao projectUserDao;
@Autowired
private TaskGroupQueueService taskGroupQueueService;
@Autowired
private ExecutorService executorService;
@Override
@Transactional
public TaskGroup createTaskGroup(User loginUser, Long projectCode, String name, String description, int groupSize) {
requireProjectPerm(loginUser, projectCode, true);
if (checkDescriptionLength(description)) {
log.warn("Parameter description is too long.");
throw new ServiceException(Status.DESCRIPTION_TOO_LONG_ERROR);
}
if (name == null) {
log.warn("Parameter name can ot be null.");
throw new ServiceException(Status.NAME_NULL);
}
if (groupSize <= 0) {
log.warn("Parameter task group size is must bigger than 1.");
throw new ServiceException(Status.TASK_GROUP_SIZE_ERROR);
}
TaskGroup duplicate = taskGroupMapper.queryByName(loginUser.getId(), name);
if (duplicate != null) {
log.warn("Task group with the same name already exists, taskGroupName:{}.", duplicate.getName());
throw new ServiceException(Status.TASK_GROUP_NAME_EXSIT);
}
Date now = new Date();
TaskGroup taskGroup = TaskGroup.builder()
.name(name)
.projectCode(projectCode)
.description(description)
.groupSize(groupSize)
.userId(loginUser.getId())
.status(Flag.YES)View on GitHub (pinned to 02eac45a1b)
Solutions
- Provide a non-null name in the request body/form parameters.
- Add client-side validation requiring name before submitting.
- Check controller binding so the name parameter is actually mapped.
Example fix
// before
createTaskGroup(user, projectCode, null, desc, 10);
// after
if (name == null || name.isEmpty()) throw new IllegalArgumentException("name required");
createTaskGroup(user, projectCode, name, desc, 10); Defensive patterns
Strategy: validation
Validate before calling
if (name == null || name.trim().isEmpty()) {
throw new IllegalArgumentException("task group name is required");
} Try / catch
try { api.createTaskGroup(u, pc, name, desc, size); }
catch (ServiceException e) { if (e.getCode() == 10134) { promptForName(); } } Prevention
- Mark name as a required field in forms and API payloads
- Never build create requests from partially populated DTOs
- Validate required fields in one shared pre-flight function
When it happens
Trigger: POST /task-group/update-or-create with the name field omitted, explicitly null in the JSON body, or bound to null by a controller when the query/form parameter is absent.
Common situations: Scripts or UI forms that omit the name field; JSON bodies missing "name"; clients that only send name when it changed (copying update semantics to the create path).
Understand the failure class
Background: "missing required argument" and "the following required arguments were not provided": what required-argument errors mean and how to fix them — this error's family across 20 libraries.
Related errors
AI-assisted analysis of apache/dolphinscheduler@02eac45a1b (2026-09-06).
Data as JSON: /api/errors/06231b8ea8c6e106.
Report an issue: GitHub.