对Solrconfig.xml的更改未反映在SolrCloud

时间:2019-03-14 09:28:40

标签: solr solrcloud solrconfig

Solr版本:7.1.0

我对solrconfig.xml进行的更改:

使用TolerantUpdateProcessorFactory按照建议的here添加了updateRequestProcessorChain

<updateRequestProcessorChain name="tolerant">
    <processor class="solr.TolerantUpdateProcessorFactory">
      <int name="maxErrors">10</int>
    </processor>
    <processor class="solr.RunUpdateProcessorFactory" />
</updateRequestProcessorChain>

错误:

{
  "responseHeader": {
    "status": 400, 
    "QTime": 1
  },
  "error": {
    "msg": "unknown UpdateRequestProcessorChain: tolerant", 
    "code": 400, 
    "metadata": [
      "error-class", 
      "org.apache.solr.common.SolrException", 
      "root-error-class", 
      "org.apache.solr.common.SolrException"
    ]
  }
}

POST请求:
http://<solr-endpoint>/solr/<core-name>/update/json?update.chain=tolerant&maxErrors=3

solrconfig.xml位置:

/opt/solr-7.1.0/server/solr/configsets/_default/conf/solrconfig.xml
/ opt / solr 目录建立符号链接的

。该目录是Solr安装目录。

我尝试重新启动Solr($ sudo service solr restart),并尝试从Solr AdminUI重新加载内核,但请求始终给出相同的错误消息,提示未知的UpdateRequestProcessorChain。

1 个答案:

答案 0 :(得分:1)

在SolrCloud模式下运行时,所有配置都存储在Zookeeper中,而不是存储在Solr目录本身内(因此,除非创建了新集合,否则不会使用您正在编辑的配置集文件)。 / p>

参考指南中有Using Zookeeper to manage configuration files部分,可用于将来的参考。

您必须先使用

下载当前活动的配置
bin/solr zk downconfig -n <name of config set> -d <path to directory>

进行更改,然后使用

将新配置上传到Zookeeper
bin/solr zk upconfig -n <name for configset> -d <path to directory with configset>

建议您保留在版本控制系统(如git)中使用的实际配置,以保留配置的完整历史记录(..以防您的Zookeeper基础架构消失)。

相关问题