{"record":{"id":"b357f373caa7fe2f","repo":"conductor-oss/conductor","slug":"task-s-not-found","errorCode":null,"errorMessage":"Task %s not found","messagePattern":"Task (.+?) not found","errorType":"exception","errorClass":"IllegalArgumentException","httpStatus":400,"severity":"error","filePath":"core/src/main/java/com/netflix/conductor/core/execution/WorkflowExecutorOps.java","lineNumber":176,"sourceCode":"                        task -> {\n                            if (queueDAO.resetOffsetTime(\n                                    QueueUtils.getQueueName(task), task.getTaskId())) {\n                                task.setCallbackAfterSeconds(0);\n                                executionDAOFacade.updateTask(task);\n                            }\n                        });\n    }\n\n    @Override\n    public String rerun(RerunWorkflowRequest request) {\n        Utils.checkNotNull(request.getReRunFromWorkflowId(), \"reRunFromWorkflowId is missing\");\n        if (!rerunWF(\n                request.getReRunFromWorkflowId(),\n                request.getReRunFromTaskId(),\n                request.getTaskInput(),\n                request.getWorkflowInput(),\n                request.getCorrelationId())) {\n            throw new IllegalArgumentException(\n                    \"Task \" + request.getReRunFromTaskId() + \" not found\");\n        }\n        return request.getReRunFromWorkflowId();\n    }\n\n    /**\n     * @param workflowId the id of the workflow to be restarted\n     * @param useLatestDefinitions if true, use the latest workflow and task definitions upon\n     *     restart\n     * @throws ConflictException Workflow is not in a terminal state.\n     * @throws NotFoundException Workflow definition is not found or Workflow is deemed\n     *     non-restartable as per workflow definition.\n     */\n    @Override\n    public void restart(String workflowId, boolean useLatestDefinitions) {\n        final WorkflowModel workflow = executionDAOFacade.getWorkflowModel(workflowId, true);\n\n        if (!workflow.getStatus().isTerminal()) {","sourceCodeStart":158,"sourceCodeEnd":194,"githubUrl":"https://github.com/conductor-oss/conductor/blob/cf7c3e4a8adfb158be778ab1ec525323c363cd3a/core/src/main/java/com/netflix/conductor/core/execution/WorkflowExecutorOps.java#L158-L194","documentation":"rerun delegates to rerunWF; if rerunWF returns false it means the requested reRunFromTaskId could not be located in the workflow, so an IllegalArgumentException is thrown naming the missing task id. The workflow is not modified.","triggerScenarios":"Calling WorkflowExecutor.rerun (or the rerun API) with a RerunWorkflowRequest whose reRunFromTaskId does not match any task in the workflow (or the workflow has no tasks).","commonSituations":"Stale or copy-pasted task id; rerun issued against the wrong workflow; task was pruned/compacted; typos in the task id.","solutions":["Fetch the workflow's tasks first and confirm the taskId exists before calling rerun.","If you want to rerun the whole workflow, omit reRunFromTaskId or use restart instead.","Verify the taskId spelling and that it belongs to the given reRunFromWorkflowId."],"exampleFix":"// before\nrequest.setReRunFromTaskId(\"wrong-id\");\nworkflowExecutor.rerun(request);\n\n// after\nWorkflowModel wf = executionDAOFacade.getWorkflowModel(workflowId, true);\nboolean exists = wf.getTasks().stream().anyMatch(t -> t.getTaskId().equals(taskId));\nif (exists) { /* rerun */ } else { /* report */ }","handlingStrategy":"validation","validationCode":"WorkflowModel wf = executionDAOFacade.getWorkflowModel(request.getReRunFromWorkflowId(), true);\nboolean exists = wf.getTasks().stream().anyMatch(t -> t.getTaskId().equals(request.getReRunFromTaskId()));\nif (!exists) throw new NotFoundException(\"task \" + request.getReRunFromTaskId() + \" not in workflow\");\nworkflowExecutor.rerun(request);","typeGuard":null,"tryCatchPattern":"try {\n    workflowExecutor.rerun(request);\n} catch (IllegalArgumentException e) {\n    // taskId not found; verify id or rerun whole workflow\n}","preventionTips":["Verify the taskId exists in the workflow before calling rerun.","Omit reRunFromTaskId (or use restart) to rerun the whole workflow.","Avoid copy-pasting task ids across workflows."],"tags":["conductor","workflow","lifecycle","rerun","task-not-found","illegal-argument"],"backgroundTag":null,"analyzedSha":"cf7c3e4a8adfb158be778ab1ec525323c363cd3a","analyzedAt":"2026-08-14T03:33:19.897Z","schemaVersion":2},"datasetVersion":"2026-08-14T05:17:29.042Z"}