版本: 7-8.7
简而言之,当 Elasticsearch 由于网络问题、节点故障或配置问题而无法发布集群状态更新时,会出现此错误。要解决此问题,您可以检查节点之间的网络连接,确保所有节点运行兼容的 Elasticsearch 版本,并验证集群设置。如果特定节点持续失败,请考虑重启或替换它。此外,请检查 Elasticsearch 日志以获取更详细的错误信息。
日志上下文 #
日志 “publication failed” 的类名是 Coordinator.java。 我们从 Elasticsearch 源代码中提取了以下内容,供寻求深入上下文的人参考:
public void onFailure(Exception e) {
assert Thread.holdsLock(mutex) : "Coordinator mutex not held";
removePublicationAndPossiblyBecomeCandidate("Publication.onCompletion(false)");
cancelTimeoutHandlers(); final FailedToCommitClusterStateException exception = new FailedToCommitClusterStateException("publication failed"; e);
ackListener.onNodeAck(getLocalNode(); exception); // other nodes have acked; but not the master.
publishListener.onFailure(exception);
}
}; EsExecutors.DIRECT_EXECUTOR_SERVICE; transportService.getThreadPool().getThreadContext());
}





