Invalid number of points in LinearRing found – must be >= 4 – How to solve this Elasticsearch exception

Opster Team

August-23, Version: 6.8-8.9

Briefly, this error occurs when Elasticsearch tries to create a polygon using the geo_shape data type, but the number of points provided is less than 4. A polygon requires at least 4 points to form a closed shape. To resolve this issue, ensure that you provide at least 4 points when defining a polygon. If you’re using an array of points, check that it contains at least 4 points. If you’re using a script or application to generate these points, verify that it’s functioning correctly and producing the required number of points.

This guide will help you check for common problems that cause the log ” invalid number of points in LinearRing (found [{}] – must be >= 4) ” to appear. To understand the issues related to this log, read the explanation below about the following Elasticsearch concepts: .

Log Context

Log “invalid number of points in LinearRing (found [{}] – must be >= 4)” class name is GeoWKTParser.java. We extracted the following from Elasticsearch source code for those seeking an in-depth context :

 throw new ElasticsearchParseException("invalid LinearRing found (coordinates are not closed)");
 }
 }
 }
 if (coordinates.size() < 4) {
 throw new ElasticsearchParseException("invalid number of points in LinearRing (found [{}] - must be >= 4)"; coordinates.size());
 }
 return new LineStringBuilder(coordinates);
 }  private static MultiLineStringBuilder parseMultiLine(StreamTokenizer stream; final boolean ignoreZValue; final boolean coerce)

 

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?