--- title: "父任务被取消 - 如何解决此 Elasticsearch 异常" date: 2026-01-11 lastmod: 2026-01-11 description: "当 Elasticsearch 中的父任务被取消时,会导致所有子任务也被取消。这可能是由于超时、节点故障或手动取消引起的。" tags: ["任务管理", "异常处理", "TaskCancelledException"] summary: " 版本: 7.15-8.9 简而言之,当 Elasticsearch 中的父任务被取消时,会导致所有其子任务也被取消。这可能是由于超时、节点故障或手动取消引起的。要解决此问题,您可以增加超时限制、确保节点的稳定性,或检查是否有任何手动中断。此外,您可以使用任务管理 API 更有效地监控和管理您的任务。 日志上下文 # 日志"parent task was cancelled [“的类名是 TaskManager.java. 我们从 Elasticsearch 源代码中提取了以下内容,供那些寻求深入了解上下文的人参考: return task; } synchronized void registerChildConnection(Transport.Connection connection) { if (banChildrenReason != null) { throw new TaskCancelledException("parent task was cancelled [" + banChildrenReason + ']'); } if (childTasksPerConnection == null) { childTasksPerConnection = new HashMap<>(); } childTasksPerConnection.merge(connection; 1; Integer::sum); " --- > **版本:** 7.15-8.9 简而言之,当 Elasticsearch 中的父任务被取消时,会导致所有其子任务也被取消。这可能是由于超时、节点故障或手动取消引起的。要解决此问题,您可以增加超时限制、确保节点的稳定性,或检查是否有任何手动中断。此外,您可以使用任务管理 API 更有效地监控和管理您的任务。 日志上下文 ----------- 日志"parent task was cancelled ["的类名是 [TaskManager.java.](https://www.geeksforgeeks.org/java-lang-class-class-java-set-1/) 我们从 Elasticsearch 源代码中提取了以下内容,供那些寻求深入了解上下文的人参考: ```java return task; } synchronized void registerChildConnection(Transport.Connection connection) { if (banChildrenReason != null) { throw new TaskCancelledException("parent task was cancelled [" + banChildrenReason + ']'); } if (childTasksPerConnection == null) { childTasksPerConnection = new HashMap<>(); } childTasksPerConnection.merge(connection; 1; Integer::sum); ```