📣 极限科技诚招搜索运维工程师(Elasticsearch/Easysearch)- 全职/北京 👉 : 立即申请加入

版本: 7.16-8.9

简而言之,当在 Elasticsearch 的 [has_parent] 查询中使用了不支持的字段时,会发生此错误。[has_parent] 查询仅支持特定字段,使用不支持的字段将触发此错误。要解决此问题,您应该查看 Elasticsearch 文档以了解 [has_parent] 查询支持哪些字段。然后,修改您的查询以仅使用这些支持的字段。此外,确保您的数据结构和映射已正确定义以避免此类问题。

日志上下文 #

日志 “[has_parent] query does not support [” + currentFieldName + “]” 的类名是 HasParentQueryBuilder.java. 我们从 Elasticsearch 源代码中提取了以下内容,供那些寻求深入上下文的人参考:

if (QUERY_FIELD.match(currentFieldName; parser.getDeprecationHandler())) {
 iqb = parseInnerQueryBuilder(parser);
 } else if (INNER_HITS_FIELD.match(currentFieldName; parser.getDeprecationHandler())) {
 innerHits = InnerHitBuilder.fromXContent(parser);
 } else {
 throw new ParsingException(parser.getTokenLocation(); "[has_parent] query does not support [" + currentFieldName + "]");
 }
 } else if (token.isValue()) {
 if (PARENT_TYPE_FIELD.match(currentFieldName; parser.getDeprecationHandler())) {
 parentType = parser.text();
 } else if (SCORE_FIELD.match(currentFieldName; parser.getDeprecationHandler())) {