gpt4 book ai didi

java - Solr 在 id 搜索中不返回文档

转载 作者:太空宇宙 更新时间:2023-11-04 07:40:43 24 4
gpt4 key购买 nike

我正在使用 solr 4.2.x 的分布式搜索,它似乎在其中一个索引上崩溃。错误是 NullPointerException,我已将其调试为以下情况

假设我有两个包含文档的索引:

  • index1 具有唯一文档 id=idA 的文档

  • index2 具有唯一文档 id=idB 的文档

当我使用 ids 参数搜索索引时,其中一个不会返回文档 - 即使它在那里(管理面板的查询会返回它)。

我执行的请求:

http://solr_server:8983/solr/index1/select?ids=idA
http://solr_server:8983/solr/index2/select?ids=idB

其中之一没有返回所请求的文档。

架构的 id 部分如下所示(并且在两个索引中相同):

<fields>

<types>
<fieldType name="textGeneral" class="solr.TextField">
<analyzer type="index">
<tokenizer class="solr.StandardTokenizerFactory"/>
<filter class="solr.LowerCaseFilterFactory"/>
</analyzer>
</fieldType>

</types>

...
<field name="solrDocumentNumber" type="textGeneral" indexed="true" stored="true" required="false"/>
...
</fields>

<uniqueKey>solrDocumentNumber</uniqueKey>

我使用标准 requestHandler。

最佳答案

经过分析、标记化 TextField并不能很好地表示唯一键。它可能会导致不可预测的结果。至少,您应该使用 StrField 为您的 key 创建一个字段,或者更好的是 UUIDField 。 Apache wiki 中有一些关于使用 Unique Keys in SOLR 的好建议。 .

关于java - Solr 在 id 搜索中不返回文档,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16101915/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com