--- title: "存储被并发关闭 – 如何解决此Elasticsearch异常" date: 2026-01-19 lastmod: 2026-01-19 description: "Elasticsearch索引存储在仍被其他进程访问时被关闭,导致出现此异常。这可能是由于竞态条件或Elasticsearch节点突然关闭引起的。" tags: ["索引存储", "并发访问", "节点关闭"] summary: " 版本: 7.9-8.9 简而言之,当Elasticsearch索引存储在仍被另一个进程访问时被关闭,就会出现此错误。这可能是由于竞态条件或Elasticsearch节点突然关闭引起的。要解决此问题,您可以尝试重启Elasticsearch节点,确保在关闭期间没有其他进程访问索引存储。如果错误仍然存在,请考虑检查集群健康状况并重新平衡索引。您可能还需要检查应用程序代码,确保它正确处理与Elasticsearch的连接。 日志上下文 # 日志"Store got closed concurrently"的类名是 SnapshotShardContext.java。 我们从Elasticsearch源代码中提取了以下内容,供那些寻求深入上下文的人使用: if (commitRef.tryIncRef()) { return Releasables.releaseOnce(commitRef::decRef); } else { snapshotStatus.ensureNotAborted(); assert false : "commit ref closed early in state " + snapshotStatus; throw new IndexShardSnapshotFailedException(store.shardId(); "Store got closed concurrently"); } } } " --- > **版本:** 7.9-8.9 简而言之,当Elasticsearch索引存储在仍被另一个进程访问时被关闭,就会出现此错误。这可能是由于竞态条件或Elasticsearch节点突然关闭引起的。要解决此问题,您可以尝试重启Elasticsearch节点,确保在关闭期间没有其他进程访问索引存储。如果错误仍然存在,请考虑检查集群健康状况并重新平衡索引。您可能还需要检查应用程序代码,确保它正确处理与Elasticsearch的连接。 日志上下文 ----------- 日志"Store got closed concurrently"的类名是[SnapshotShardContext.java。](https://www.geeksforgeeks.org/java-lang-class-class-java-set-1/) 我们从Elasticsearch源代码中提取了以下内容,供那些寻求深入上下文的人使用: ```java if (commitRef.tryIncRef()) { return Releasables.releaseOnce(commitRef::decRef); } else { snapshotStatus.ensureNotAborted(); assert false : "commit ref closed early in state " + snapshotStatus; throw new IndexShardSnapshotFailedException(store.shardId(); "Store got closed concurrently"); } } } ```