--- title: "当集群中所有节点的版本为特定版本时才能使用功能状态 – 如何解决此 Elasticsearch 异常" date: 2026-03-18 lastmod: 2026-03-18 description: "在尝试使用功能状态 API 时,如果集群中并非所有节点都运行相同版本,则会发生此错误。本文介绍如何解决此版本不匹配问题。" tags: ["集群管理", "版本兼容性", "功能状态"] summary: "版本: 7.13-7.13 简而言之,当您尝试在并非所有节点都运行相同版本的 Elasticsearch 集群上使用 feature_states API 时,会发生此错误。此 API 是特定于版本的,要求所有节点必须处于相同版本。要解决此问题,您可以将所有节点升级到所需版本,或者等到所有节点都处于相同版本后再使用 feature_states API。或者,您可以隔离运行不同版本的节点,并在同构集群上运行该 API。 Log Context # 日志 “feature_states can only be used when all nodes in cluster are version [” 类名称是 SnapshotsService.java。我们从 Elasticsearch 源代码中提取了以下内容,供寻求深入上下文的人参考: } } else { featureStatesSet = Collections.emptySet(); } } else if (requestedStates.isEmpty() == false) { listener.onFailure(new SnapshotException(snapshot; "feature_states can only be used when all nodes in cluster are version [" + FEATURE_STATES_VERSION + "] or higher; but at least one node in this cluster is on version [" + initialMinNodeVersion + "]")); return; } else { featureStatesSet = Collections." --- > **版本:** 7.13-7.13 简而言之,当您尝试在并非所有节点都运行相同版本的 Elasticsearch 集群上使用 feature_states API 时,会发生此错误。此 API 是特定于版本的,要求所有节点必须处于相同版本。要解决此问题,您可以将所有节点升级到所需版本,或者等到所有节点都处于相同版本后再使用 feature_states API。或者,您可以隔离运行不同版本的节点,并在同构集群上运行该 API。 Log Context ----------- 日志 "feature\_states can only be used when all nodes in cluster are version [" 类名称是 [SnapshotsService.java](https://www.geeksforgeeks.org/java-lang-class-class-java-set-1/)。我们从 Elasticsearch 源代码中提取了以下内容,供寻求深入上下文的人参考: ```java } } else { featureStatesSet = Collections.emptySet(); } } else if (requestedStates.isEmpty() == false) { listener.onFailure(new SnapshotException(snapshot; "feature_states can only be used when all nodes in cluster are version [" + FEATURE_STATES_VERSION + "] or higher; but at least one node in this cluster is on version [" + initialMinNodeVersion + "]")); return; } else { featureStatesSet = Collections.emptySet(); ```