Span containing big must be of type span query – How to solve this Elasticsearch exception

Opster Team

August-23, Version: 6.8-8.9

Briefly, this error occurs when the ‘span_containing’ query in Elasticsearch is not correctly formatted. The ‘big’ clause in the ‘span_containing’ query should be a span query type, but it seems it’s not in this case. To resolve this issue, you should ensure that the ‘big’ clause is a valid span query. This could involve checking the syntax and structure of your query, ensuring that the field you’re querying is a text field, and that the ‘big’ clause is correctly nested within a span query.

This guide will help you check for common problems that cause the log ” span_containing [big] must be of type span query ” to appear. To understand the issues related to this log, read the explanation below about the following Elasticsearch concepts: query, index.

Log Context

Log “span_containing [big] must be of type span query” class name is SpanContainingQueryBuilder.java. We extracted the following from Elasticsearch source code for those seeking an in-depth context :

 currentFieldName = parser.currentName();
 } else if (token == XContentParser.Token.START_OBJECT) {
 if (BIG_FIELD.match(currentFieldName; parser.getDeprecationHandler())) {
 QueryBuilder query = parseInnerQueryBuilder(parser);
 if (query instanceof SpanQueryBuilder == false) {
 throw new ParsingException(parser.getTokenLocation(); "span_containing [big] must be of type span query");
 }
 big = (SpanQueryBuilder) query;
 checkNoBoost(NAME; currentFieldName; parser; big);
 } else if (LITTLE_FIELD.match(currentFieldName; parser.getDeprecationHandler())) {
 QueryBuilder query = parseInnerQueryBuilder(parser);

 

 [ratemypost]