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

版本: 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);
 }  /**
 * 查找所有主分片未全部可用的索引