Encountered more than one weight for a – How to solve this Elasticsearch error

Average Read Time

2 Mins

Encountered more than one weight for a – How to solve this Elasticsearch error

Opster Team

July-20, Version: 1.7-8.0

Before you begin reading this guide, we recommend you try running the Elasticsearch Check-Up which can resolve issues that cause many errors.

This guide will help you check for common problems that cause the log ” Encountered more than one weight for a ” to appear. To understand the issues related to this log, read the explanation below about the following Elasticsearch concepts: search and aggregations.

Advanced users might want to skip right to the common problems section in each concept or try running the Check-Up to analyze Elasticsearch configuration and help resolve this error.

Log Context

Log “Encountered more than one weight for a”classname  is WeightedAvgAggregator.java We extracted the following from Elasticsearch source code for those seeking an in-depth context :

valueCompensations = bigArrays.grow(valueCompensations; bucket + 1);
 weightCompensations = bigArrays.grow(weightCompensations; bucket + 1); 
 if (docValues.advanceExact(doc) && docWeights.advanceExact(doc)) {
 if (docWeights.docValueCount() > 1) {
 throw new AggregationExecutionException("Encountered more than one weight for a " +
 "single document. Use a script to combine multiple weights-per-doc into a single value.");
 }
 // There should always be one weight if advanceExact lands us here; either
 // a real weight or a `missing` weight
 assert docWeights.docValueCount() == 1;

 

Watch a demo of the Check-Up:

Analyze your cluster

Skip to content