Briefly, this error occurs when Elasticsearch tries to execute a join operation but cannot find a configured join field. This is usually due to a misconfiguration in the mapping of the index. To resolve this issue, you can either reconfigure the mapping of the index to include a join field or modify your query to avoid the join operation. If you choose to reconfigure the mapping, remember that you will need to reindex your data.
This guide will help you check for common problems that cause the log ” [” + NAME + “] no join field has been configured ” to appear. To understand the issues related to this log, read the explanation below about the following Elasticsearch concepts: join, query.
Log Context
Log “[” + NAME + “] no join field has been configured” class name is HasChildQueryBuilder.java. We extracted the following from Elasticsearch source code for those seeking an in-depth context :
Joiner joiner = Joiner.getJoiner(context); if (joiner == null) { if (ignoreUnmapped) { return new MatchNoDocsQuery(); } else { throw new QueryShardException(context; "[" + NAME + "] no join field has been configured"); } } if (joiner.childTypeExists(type) == false) { if (ignoreUnmapped) {