删除悬挂索引 API

编辑

删除一个悬挂索引。

请求

编辑
resp = client.dangling_indices.delete_dangling_index(
    index_uuid="<index-uuid>",
    accept_data_loss=True,
)
print(resp)
const response = await client.danglingIndices.deleteDanglingIndex({
  index_uuid: "<index-uuid>",
  accept_data_loss: "true",
});
console.log(response);
DELETE /_dangling/<index-uuid>?accept_data_loss=true

先决条件

编辑
  • 如果启用了 Elasticsearch 安全功能,您必须拥有 manage 集群权限才能使用此 API。

描述

编辑

如果 Elasticsearch 遇到当前集群状态中不存在的索引数据,则这些索引将被视为悬挂索引。例如,如果在 Elasticsearch 节点离线时删除了超过 cluster.indices.tombstones.size 个索引,则可能会发生这种情况。

通过引用其 UUID 删除悬挂索引。使用 列出悬挂索引 API 来查找索引的 UUID。

路径参数

编辑
<index-uuid>
(必需,字符串) 要删除的索引的 UUID。您可以使用 列出悬挂索引 API 来查找此 UUID。

查询参数

编辑
accept_data_loss
(可选,布尔值) 此字段必须设置为 true 才能执行导入,因为将不再可能从悬挂索引恢复数据。
master_timeout
(可选,时间单位) 等待主节点的期限。如果在超时到期之前主节点不可用,则请求将失败并返回错误。默认为 30s。也可以设置为 -1 表示请求永远不应超时。
timeout
(可选,时间单位) 在更新集群元数据后,等待来自集群中所有相关节点的响应的期限。如果在超时到期之前未收到任何响应,则集群元数据更新仍然适用,但响应将表明它未被完全确认。默认为 30s。也可以设置为 -1 表示请求永远不应超时。