📣 极限科技诚招搜索运维工程师(Elasticsearch/Easysearch)- 全职/北京 👉 : 立即申请加入

版本: 7.8-8.9

简而言之,当Elasticsearch尝试访问一个不存在的任务或已经完成并从任务管理索引中删除的任务时,会出现此错误。这可能是由于任务执行延迟或在请求任务结果时过早地请求导致的。要解决此问题,您可以:1) 确保任务ID正确,2) 在请求任务结果之前增加等待时间,或 3) 在请求任务结果之前检查任务是否已完成。

日志上下文 #

日志 “task [{}] is not found” 的类名是 TransportCancelTasksAction.java. 我们从Elasticsearch源代码中提取了以下内容,以便为寻求深入了解上下文的人提供参考:

} else {
 if (taskManager.getTask(request.getTargetTaskId().getId()) != null) {
 // 任务存在,但不支持取消
 throw new IllegalArgumentException("task [" + request.getTargetTaskId() + "] doesn't support cancellation");
 } else {
 throw new ResourceNotFoundException("task [{}] is not found"; request.getTargetTaskId());
 }
 }
 } else {
 final var tasks = new ArrayList();
 for (CancellableTask task : taskManager.getCancellableTasks().values()) {