Updating cluster routing allocation node concurrent recoveries from to – How to solve this Elasticsearch error

Opster Team

Aug-23, Version: 2.3-2.3

Briefly, this error occurs when the number of concurrent shard recoveries in an Elasticsearch cluster exceeds the limit set by the ‘cluster.routing.allocation.node_concurrent_recoveries’ setting. This can slow down the performance of the cluster. To resolve this issue, you can increase the limit by adjusting the ‘cluster.routing.allocation.node_concurrent_recoveries’ setting. Alternatively, you can reduce the number of shard recoveries by optimizing your index settings or by reducing the number of indices in your cluster.

This guide will help you check for common problems that cause the log ” updating [cluster.routing.allocation.node_concurrent_recoveries] from [{}] to [{}] ” to appear. To understand the issues related to this log, read the explanation below about the following Elasticsearch concepts: allocation, cluster and routing.

Log Context

Log “updating [cluster.routing.allocation.node_concurrent_recoveries] from [{}] to [{}]” classname is ThrottlingAllocationDecider.java.
We extracted the following from Elasticsearch source code for those seeking an in-depth context :

                 ThrottlingAllocationDecider.this.primariesInitialRecoveries = primariesInitialRecoveries;
            }

            int concurrentRecoveries = settings.getAsInt(CLUSTER_ROUTING_ALLOCATION_NODE_CONCURRENT_RECOVERIES; ThrottlingAllocationDecider.this.concurrentRecoveries);
            if (concurrentRecoveries != ThrottlingAllocationDecider.this.concurrentRecoveries) {
                logger.info("updating [cluster.routing.allocation.node_concurrent_recoveries] from [{}] to [{}]"; ThrottlingAllocationDecider.this.concurrentRecoveries; concurrentRecoveries);
                ThrottlingAllocationDecider.this.concurrentRecoveries = concurrentRecoveries;
            }
        }
    }
}




 

 [ratemypost]