试图将子文档嵌套在solr 6.5的托管模式中,作为-
<fieldType name="_nest_path_" class="solr.NestPathField"/>
<field name="_root_" type="string" indexed="true" stored="false" docValues="false" />
<field name="_childDocuments_" type="_nest_path_">
<field name="id" type="string" multiValued="false" indexed="true" required="true" stored="true"/>
<field name="firstname" type="text_general" indexed="true" stored="true"/>
<field name="lastname" type="text_general" indexed="true" stored="true"/>
但是似乎在solr 6.5中不支持_nest_path_
字段,并且出现错误Error loading class solr.NestPathField
。
任何不使用nest_path
来存储子文档的替代方法,或者我在这里做错什么了吗?
此架构在Solr 8.4中可以正常运行
子文档无需使用嵌套文档功能-nested documents feature just makes it easier即可自动处理。
Nested documents were introduced with Solr 8-因此,如发现的那样,尝试在Solr 6中使用该功能将无效。
据我所知,在较早的版本中,您必须手动引用这些相关字段,然后使用这些值显式地apply the block join query parser和childdoctransformer进行这些更新。
如果可以,请按照您期望的功能升级到Solr 8(在最新的dotrelease中),而不是增加处理它的复杂度以解决早期版本中的限制。