Apache solr 使用分片分发搜索不起作用(shardsWhitelist)

Apache solr distributes search using shards are not working (shardsWhitelist)

我安装了最新的 solr 并创建了多个内核,称为 UnicoreSAP 内核,并根据 [=12= 的 SOLR 配置]我们需要在各自的configuriations目录下添加如下代码solrconfig.xml文件,下面solrconfig.xml from 单核配置

<requestHandler name="/select" class="solr.SearchHandler">
  <!-- other params go here -->
  <shardHandlerFactory class="HttpShardHandlerFactory">
    <int name="socketTimeout">1000</int>
    <int name="connTimeout">5000</int>
    <str name="shardsWhitelist">localhost:8983/solr/SAP</str>
  </shardHandlerFactory>
</requestHandler>

我用来从分片收集数据的查询:

http://localhost:8983/solr/UniCore/select?q=text:searchString&wt=json&indent=true&shards=localhost:8983/solr/SAP

发现以下问题:

我用谷歌搜索了很多,但仍然找不到解决方案。

在 solr 服务器目录下修改 solr.xml => 通过将核心名称添加到 来更新此文件solsInstance\Server\solr\solr.xml 中的 shardsWhitelist 并重启 solr。这适用于 SOLR-8.7 版本。

<!-- shardsWhiltlisting SAP core for distributed search -->

<shardHandlerFactory name="shardHandlerFactory"
    class="HttpShardHandlerFactory">
    <int name="socketTimeout">${socketTimeout:600000}</int>
    <int name="connTimeout">${connTimeout:60000}</int>
    <str name="shardsWhitelist">${solr.shardsWhitelist:hostName:8983/solr/SAP}</str> 
  </shardHandlerFactory>

为所有需要的内核配置 HttpShardHanldeFactory shardsWhiltlist

<str name="shardsWhitelist">${solr.shardsWhitelist:hostName:port/solr/core1,
hostName:port/solr/core2,.., solr.shardsWhitelist:hostName:port/solr/coren,}</str>