--- title: "重建索引时发生错误:批量失败和搜索失败 – 如何解决此 Elasticsearch 异常" date: 2026-02-17 lastmod: 2026-02-17 description: "在Elasticsearch重建索引过程中遇到批量失败和搜索失败的错误,分析原因并提供解决方案,包括增加堆内存、检查映射配置和网络连接。" tags: ["重建索引", "批量操作", "搜索失败", "索引管理"] summary: "版本: 6.8-6.8 简要来说,当 Elasticsearch 在重建索引(reindexing)过程中遇到问题时就会出现此错误。问题可能由于内存不足、映射配置错误或网络连接问题引起。要解决此问题,可以增加堆大小以提供更多内存,确保在重建索引前映射配置正确,并检查网络连接。此外,还可以将重建索引过程分解为较小的任务,避免系统过载。 日志上下文 # 日志 “error occurred while reindexing; bulk failures [{}]; search failures [{}]” 的类名是 InternalIndexReindexer.java。我们从 Elasticsearch 源代码中提取了以下内容,供那些需要深入了解上下文的人参考: : ""; String searchFailures = (bulkByScrollResponse.getSearchFailures() != null) ? Strings.collectionToCommaDelimitedString(bulkByScrollResponse.getSearchFailures()) : ""; logger.error("error occurred while reindexing; bulk failures [{}]; search failures [{}]", bulkFailures, searchFailures); return new ElasticsearchException("error occurred while reindexing; bulk failures [{}]; search failures [{}]", bulkFailures, searchFailures); } private void checkMasterAndDataNodeVersion(ClusterState clusterState) { if (clusterState." --- > **版本:** 6.8-6.8 简要来说,当 Elasticsearch 在重建索引(reindexing)过程中遇到问题时就会出现此错误。问题可能由于内存不足、映射配置错误或网络连接问题引起。要解决此问题,可以增加堆大小以提供更多内存,确保在重建索引前映射配置正确,并检查网络连接。此外,还可以将重建索引过程分解为较小的任务,避免系统过载。 日志上下文 ----------- 日志 "error occurred while reindexing; bulk failures [{}]; search failures [{}]" 的类名是 [InternalIndexReindexer.java](https://www.geeksforgeeks.org/java-lang-class-class-java-set-1/)。我们从 Elasticsearch 源代码中提取了以下内容,供那些需要深入了解上下文的人参考: ```java : ""; String searchFailures = (bulkByScrollResponse.getSearchFailures() != null) ? Strings.collectionToCommaDelimitedString(bulkByScrollResponse.getSearchFailures()) : ""; logger.error("error occurred while reindexing; bulk failures [{}]; search failures [{}]", bulkFailures, searchFailures); return new ElasticsearchException("error occurred while reindexing; bulk failures [{}]; search failures [{}]", bulkFailures, searchFailures); } private void checkMasterAndDataNodeVersion(ClusterState clusterState) { if (clusterState.nodes().getMinNodeVersion().before(Upgrade.UPGRADE_INTRODUCED)) { ```