--- title: "请求的功能状态 – 如何解决此 Elasticsearch 异常" date: 2026-01-20 lastmod: 2026-01-20 description: "当 Elasticsearch 被要求执行需要特定功能状态的操作,但这些功能状态当前未启用或不可用时,会引发此错误。通常是由于配置错误或缺少插件导致的。" tags: ["功能状态", "异常处理", "快照恢复", "配置错误"] summary: "版本: 7.12-7.13 简而言之,当 Elasticsearch 被要求执行需要特定功能状态的操作,但这些功能状态当前未启用或不可用时,就会发生此错误。这可能是由于配置错误或缺少插件导致的。要解决此问题,您可以检查 Elasticsearch 配置以确保启用了所需的功能状态。如果未启用,则可以启用它们。如果功能状态属于未安装的插件的一部分,则需要安装必要的插件。 日志上下文 # 日志 “requested feature states [” 的类名是 RestoreService.java。 我们从 Elasticsearch 源代码中提取了以下内容,供那些寻求深入上下文的人参考: "] indicates that no feature states should be restored; but other feature states were requested: " + requestedStates); } if (snapshotFeatureStates.keySet().containsAll(requestedStates) == false) { SetnonExistingRequestedStates = new HashSet<>(requestedStates); nonExistingRequestedStates.removeAll(snapshotFeatureStates.keySet()); throw new SnapshotRestoreException(snapshot; "requested feature states [" + nonExistingRequestedStates + "] are not present in snapshot"); } featureStatesToRestore = new HashMap<>(snapshotFeatureStates); featureStatesToRestore." --- > **版本:** 7.12-7.13 简而言之,当 Elasticsearch 被要求执行需要特定功能状态的操作,但这些功能状态当前未启用或不可用时,就会发生此错误。这可能是由于配置错误或缺少插件导致的。要解决此问题,您可以检查 Elasticsearch 配置以确保启用了所需的功能状态。如果未启用,则可以启用它们。如果功能状态属于未安装的插件的一部分,则需要安装必要的插件。 日志上下文 ----------- 日志 "requested feature states [" 的类名是 [RestoreService.java。](https://www.geeksforgeeks.org/java-lang-class-class-java-set-1/) 我们从 Elasticsearch 源代码中提取了以下内容,供那些寻求深入上下文的人参考: ```java "] indicates that no feature states should be restored; but other feature states were requested: " + requestedStates); } if (snapshotFeatureStates.keySet().containsAll(requestedStates) == false) { SetnonExistingRequestedStates = new HashSet<>(requestedStates); nonExistingRequestedStates.removeAll(snapshotFeatureStates.keySet()); throw new SnapshotRestoreException(snapshot; "requested feature states [" + nonExistingRequestedStates + "] are not present in snapshot"); } featureStatesToRestore = new HashMap<>(snapshotFeatureStates); featureStatesToRestore.keySet().retainAll(requestedStates); } ```