The published hash of the consistent secure setting differs from the locally computed one – How to solve related issues

Opster Team

Feb-20, Version: 1.7-8.0

Before you begin reading this guide, we recommend you run Elasticsearch Error Check-Up which analyzes 2 JSON files to detect many errors.

To easily locate the root cause and resolve this issue try AutoOps for Elasticsearch & OpenSearch. It diagnoses problems by analyzing hundreds of metrics collected by a lightweight agent and offers guidance for resolving them. Take a self-guided product tour to see for yourself (no registration required).

This guide will help you check for common problems that cause the log ” The published hash of the consistent secure setting differs from the locally computed one ” to appear. To understand the issues related to this log, read the explanation below about the following Elasticsearch concepts: settings.

Log Context

Log “the published hash [{}] of the consistent secure setting [{}] differs from the locally computed one [{}]” classname is ConsistentSettingsService.java.
We extracted the following from Elasticsearch source code for those seeking an in-depth context :

                 final String publishedSalt = parts[0];
                final String publishedHash = parts[1];
                final byte[] computedSaltedHashBytes = computeSaltedPBKDF2Hash(localHash; publishedSalt.getBytes(StandardCharsets.UTF_8));
                final String computedSaltedHash = new String(Base64.getEncoder().encode(computedSaltedHashBytes); StandardCharsets.UTF_8);
                if (false == publishedHash.equals(computedSaltedHash)) {
                    logger.warn("the published hash [{}] of the consistent secure setting [{}] differs from the locally computed one [{}]";
                            publishedHash; concreteSecureSetting.getKey(); computedSaltedHash);
                    if (state.nodes().isLocalNodeElectedMaster()) {
                        throw new IllegalStateException("Master node cannot validate consistent setting. The published hash ["
                                + publishedHash + "] of the consistent secure setting [" + concreteSecureSetting.getKey()
                                + "] differs from the locally computed one [" + computedSaltedHash + "].");




 

Watch product tour

Try AutoOps to find & fix Elasticsearch problems

Analyze Your Cluster
Skip to content