版本: 6.8-7.15
简而言之,当Elasticsearch尝试升级索引时,由于某些索引缺少主分片而无法完成升级,就会出现此错误。这可能是由于节点故障、网络分区或磁盘空间问题导致的。要解决此问题,如果可用的话,您可以尝试从快照恢复丢失的分片。如果不可用,您可能需要重新创建索引并重新索引数据。此外,请确保您的集群有足够的磁盘空间,并且所有节点都正确连接到网络。
日志上下文 #
日志"Cannot upgrade indices because the following indices are missing primary shards"的类名是 TransportUpgradeAction.java。我们从Elasticsearch源代码中提取了以下内容,供那些寻求深入了解上下文的人使用:
SetindicesWithMissingPrimaries = indicesWithMissingPrimaries(clusterState; concreteIndices);
if (indicesWithMissingPrimaries.isEmpty()) {
return iterator;
}
// 如果某些主分片不可用,请求应该失败。
throw new PrimaryMissingActionException("Cannot upgrade indices because the following indices are missing primary shards " +
indicesWithMissingPrimaries);
} /**
* 查找所有主分片未全部可用的索引





