--- title: "Join target is a follower - 如何解决此 Elasticsearch 异常" date: 2026-01-22 lastmod: 2026-01-22 description: "当尝试在Elasticsearch的follower索引上执行join操作时会出现此错误。Follower索引用于跨集群复制且是只读的,因此不能用于join操作。" tags: ["跨集群复制", "Follower索引", "Join操作", "索引复制"] summary: " 版本: 7-8.9 简而言之,当您尝试在Elasticsearch中的follower索引上执行join操作时,会发生此错误。Follower索引用于跨集群复制,并且是只读的,因此不能用于join操作。要解决此问题,您可以在leader索引上执行join操作,或者暂停复制,将follower索引转换为常规索引,执行join操作,然后恢复复制。或者,您可以创建一个新的常规索引,将数据从follower索引复制到新索引,然后执行join操作。 日志上下文 # 日志 “join target is a follower” 的类名是 JoinHelper.java. 我们从Elasticsearch源代码中提取了以下内容,供那些寻求深入上下文的人参考: } static class FollowerJoinAccumulator implements JoinAccumulator { @Override public void handleJoinRequest(DiscoveryNode sender; TransportVersion transportVersion; ActionListenerjoinListener) { joinListener.onFailure(new CoordinationStateRejectedException("join target is a follower")); } @Override public String toString() { return "FollowerJoinAccumulator"; " --- > **版本:** 7-8.9 简而言之,当您尝试在Elasticsearch中的follower索引上执行join操作时,会发生此错误。Follower索引用于跨集群复制,并且是只读的,因此不能用于join操作。要解决此问题,您可以在leader索引上执行join操作,或者暂停复制,将follower索引转换为常规索引,执行join操作,然后恢复复制。或者,您可以创建一个新的常规索引,将数据从follower索引复制到新索引,然后执行join操作。 日志上下文 ----------- 日志 "join target is a follower" 的类名是 [JoinHelper.java.](https://www.geeksforgeeks.org/java-lang-class-class-java-set-1/) 我们从Elasticsearch源代码中提取了以下内容,供那些寻求深入上下文的人参考: ```java } static class FollowerJoinAccumulator implements JoinAccumulator { @Override public void handleJoinRequest(DiscoveryNode sender; TransportVersion transportVersion; ActionListenerjoinListener) { joinListener.onFailure(new CoordinationStateRejectedException("join target is a follower")); } @Override public String toString() { return "FollowerJoinAccumulator"; ```