Received cluster state from with a different cluster uuid than local cluster uuid rejecting – How to solve this OpenSearch error

Opster Team

Aug-23, Version: 1-1.1

Before you dig into reading this guide, have you tried asking OpsGPT what this log means? You’ll receive a customized analysis of your log.

Try OpsGPT now for step-by-step guidance and tailored insights into your OpenSearch operation.

Briefly, this error occurs when there is a mismatch between the cluster UUIDs of the local and remote OpenSearch clusters during a cluster state update. This could be due to a node trying to join the wrong cluster or a restored snapshot from another cluster. To resolve this, ensure that all nodes belong to the same cluster by checking their configuration files. If a snapshot was restored, ensure it was from the same cluster. If the error persists, you may need to wipe the data directory of the problematic node and let it rejoin the cluster.

For a complete solution to your to your search operation, try for free AutoOps for Elasticsearch & OpenSearch . With AutoOps and Opster’s proactive support, you don’t have to worry about your search operation – we take charge of it. Get improved performance & stability with less hardware.

This guide will help you check for common problems that cause the log ” received cluster state from {} with a different cluster uuid {} than local cluster uuid {}; rejecting ” to appear. To understand the issues related to this log, read the explanation below about the following OpenSearch concepts: cluster.

Log Context

Log “received cluster state from {} with a different cluster uuid {} than local cluster uuid {}; rejecting” classname is Coordinator.java.
We extracted the following from OpenSearch source code for those seeking an in-depth context :

            final ClusterState localState = coordinationState.get().getLastAcceptedState();

            if (localState.metadata().clusterUUIDCommitted() &&
                localState.metadata().clusterUUID().equals(publishRequest.getAcceptedState().metadata().clusterUUID()) == false) {
                logger.warn("received cluster state from {} with a different cluster uuid {} than local cluster uuid {}; rejecting";
                    sourceNode; publishRequest.getAcceptedState().metadata().clusterUUID(); localState.metadata().clusterUUID());
                throw new CoordinationStateRejectedException("received cluster state from " + sourceNode +
                    " with a different cluster uuid " + publishRequest.getAcceptedState().metadata().clusterUUID() +
                    " than local cluster uuid " + localState.metadata().clusterUUID() + "; rejecting");
            }

 

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?

Get expert answers on Elasticsearch/OpenSearch