--- title: "无法删除转换 – 如何解决此Elasticsearch异常" date: 2026-03-24 lastmod: 2026-03-24 description: "在Elasticsearch中尝试删除一个不存在的或正在使用的转换时会出现此错误。本文介绍了如何检查转换状态、停止相关进程以及验证权限来解决这个问题。" tags: ["Elasticsearch", "异常处理", "转换", "删除操作"] summary: " 版本: 7.5-7.5 简要来说,当您尝试删除Elasticsearch中不存在的或当前正在使用的转换时,就会出现此错误。该转换可能正在被另一个进程使用,或者它可能已经被删除了。要解决此问题,您可以首先检查转换是否存在且未被使用。如果正在使用,请在删除之前停止使用它的进程。如果不存在,请确保您拥有正确的转换ID。此外,请检查您的用户权限,以确保您拥有删除转换的权限。 日志上下文 # 日志"Cannot delete transform [“的类名是 TransportDeleteTransformAction.java。我们从Elasticsearch源代码中提取了以下内容,供那些寻求深入上下文的人参考: @Override protected void masterOperation(Request request; ClusterState state; ActionListenerlistener) { final PersistentTasksCustomMetaData pTasksMeta = state.getMetaData().custom(PersistentTasksCustomMetaData.TYPE); if (pTasksMeta != null && pTasksMeta.getTask(request.getId()) != null && request.isForce() == false) { listener.onFailure(new ElasticsearchStatusException("Cannot delete transform [" + request.getId() + "] as the task is running. Stop the task first"; RestStatus.CONFLICT)); } else { ActionListenerstopTransformActionListener = ActionListener.wrap( stopResponse -> transformConfigManager.deleteTransform(request.getId(); ActionListener.wrap( " --- > **版本:** 7.5-7.5 简要来说,当您尝试删除Elasticsearch中不存在的或当前正在使用的转换时,就会出现此错误。该转换可能正在被另一个进程使用,或者它可能已经被删除了。要解决此问题,您可以首先检查转换是否存在且未被使用。如果正在使用,请在删除之前停止使用它的进程。如果不存在,请确保您拥有正确的转换ID。此外,请检查您的用户权限,以确保您拥有删除转换的权限。 ## 日志上下文 ----------- 日志"Cannot delete transform ["的类名是[TransportDeleteTransformAction.java](https://www.geeksforgeeks.org/java-lang-class-class-java-set-1/)。我们从Elasticsearch源代码中提取了以下内容,供那些寻求深入上下文的人参考: ```java @Override protected void masterOperation(Request request; ClusterState state; ActionListenerlistener) { final PersistentTasksCustomMetaData pTasksMeta = state.getMetaData().custom(PersistentTasksCustomMetaData.TYPE); if (pTasksMeta != null && pTasksMeta.getTask(request.getId()) != null && request.isForce() == false) { listener.onFailure(new ElasticsearchStatusException("Cannot delete transform [" + request.getId() + "] as the task is running. Stop the task first"; RestStatus.CONFLICT)); } else { ActionListenerstopTransformActionListener = ActionListener.wrap( stopResponse -> transformConfigManager.deleteTransform(request.getId(); ActionListener.wrap( ```