Incompatible cluster state version – resending complete cluster state – How to solve this Elasticsearch error

Opster Team

Aug-23, Version: 2.3-2.3

Briefly, this error occurs when there is a mismatch between the cluster state versions of different nodes in an Elasticsearch cluster. This can happen due to network issues, or when a node rejoins the cluster after a period of disconnection. To resolve this issue, you can try the following: 1) Ensure all nodes in the cluster are running the same version of Elasticsearch. 2) Check the network connectivity between all nodes. 3) If a node is frequently disconnecting and reconnecting, investigate the cause and fix it to prevent the node from falling out of sync.

This guide will help you check for common problems that cause the log ” incompatible cluster state version – resending complete cluster state ” to appear. To understand the issues related to this log, read the explanation below about the following Elasticsearch concepts: cluster, discovery and version.

Log Context

Log “incompatible cluster state version – resending complete cluster state” classname is LocalDiscovery.java.
We extracted the following from Elasticsearch source code for those seeking an in-depth context :

                         }
                        try {
                            newNodeSpecificClusterState = discovery.lastProcessedClusterState.readDiffFrom(StreamInput.wrap(clusterStateDiffBytes)).apply(discovery.lastProcessedClusterState);
                            logger.trace("sending diff cluster state version [{}] with size {} to [{}]"; clusterState.version(); clusterStateDiffBytes.length; discovery.localNode().getName());
                        } catch (IncompatibleClusterStateVersionException ex) {
                            logger.warn("incompatible cluster state version - resending complete cluster state"; ex);
                        }
                    }
                    if (newNodeSpecificClusterState == null) {
                        if (clusterStateBytes == null) {
                            clusterStateBytes = Builder.toBytes(clusterState);




 

How helpful was this guide?

We are sorry that this post was not useful for you!

Let us improve this post!

Tell us how we can improve this post?