Copy to in multi fields is not allowed Found the copy to in field name – How to solve this Elasticsearch exception

Opster Team

August-23, Version: 6.8-7.1

Briefly, this error occurs when the “copy_to” parameter is used within a multi-field in Elasticsearch. This is not allowed because multi-fields are meant to provide different ways of analyzing a single field, not to copy data. To resolve this issue, you can remove the “copy_to” parameter from the multi-field. Alternatively, you can create a separate field outside of the multi-field and use the “copy_to” parameter there.

This guide will help you check for common problems that cause the log ” copy_to in multi fields is not allowed. Found the copy_to in field [” + name + “] ” to appear. To understand the issues related to this log, read the explanation below about the following Elasticsearch concepts: index.

Log Context

Log “copy_to in multi fields is not allowed. Found the copy_to in field [” + name + “] ” class name is TypeParsers.java. We extracted the following from Elasticsearch source code for those seeking an in-depth context :

 iterator.remove();
 } else if (parseMultiField(builder::addMultiField; name; parserContext; propName; propNode)) {
 iterator.remove();
 } else if (propName.equals("copy_to")) {
 if (parserContext.isWithinMultiField()) {
 throw new MapperParsingException("copy_to in multi fields is not allowed. Found the copy_to in field [" + name + "] " +
 "which is within a multi field.");
 } else {
 List copyFields = parseCopyFields(propNode);
 FieldMapper.CopyTo.Builder cpBuilder = new FieldMapper.CopyTo.Builder();
 copyFields.forEach(cpBuilder::add);

 

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?