我们安装了一个带有四个内核的复制Solr;一个主设备接收所有写入,一个或多个从设备从主设备复制。对于除了其中一个核心之外的所有核心都可以正常工作。
一个核心在主人身上表现出非常特殊的行为。在其上执行写操作会更改Solr管理员中显示的主(搜索)版本,但主(复制)永远不会更改。因此奴隶们永远不会注意到主核心的变化;只针对这一个核心;其他三个人没有表现出这个问题。这很奇怪,因为复制配置在所有四个核心之间共享。
<requestHandler class="solr.ReplicationHandler" name="/replication" startup="lazy">
<lst name="master">
<str name="enable">${enable.master:false}</str>
<str name="replicateAfter">startup</str>
<str name="replicateAfter">commit</str>
<str name="replicateAfter">optimize</str>
<str name="confFiles">schema.xml,solrconfig_admin.xml,solrconfig_highlighter.xml,solrconfig_logging.xml,solrconfig_indexconfig.xml,solrconfig_matchversion.xml,solrconfig_query.xml,solrconfig.xml,stopwords.txt
</str>
<str name="commitReserveDuration">00:00:10</str>
</lst>
<lst name="slave">
<str name="enable">${enable.slave:false}</str>
<str name="masterUrl">${replication.master.url}</str>
<str name="pollInterval">00:00:30</str>
</lst>
</requestHandler>
参数replication.master.url
,enable.master
和enable.slave
在相应的core / conf目录中的solrcore.properties中定义。
我们使用Solr 4.5.1。