1

我有几个每小时重新加载的外部文件字段。我的 solrconfig.xml 有

<dataDir>${solr.data.basedir}/${solr.core.name}</dataDir>

并且外部文件字段文件位于此目录下,例如external_*. 使用 Solr 复制,我只能复制索引和配置文件。唯一的选择是在从站上单独重新加载这些文件,然后reloadCache单独调用所有从站吗?或者 Solr 可以复制外部文件字段文件吗?

4

2 回答 2

2

Solr 能够复制配置文件和索引。
复制文件后,Solr 核心将重新加载到从属设备上,无需手动完成。

编辑:-

外部文件的位置是确实被复制的数据文件夹。

也用于重新加载外部文件检查链接

于 2013-06-25T04:28:21.703 回答
2

Solr 不会自动复制 ext 文件字段文件,即使它们低于<dataDir>solrconfig.xml 中指定的文件。要复制这些文件,我们需要confFiles在 solrconfig 的复制处理程序中使用相对路径指定它们。

我的 Solr conf 目录(包含 solrconfig.xml、synonyms.txt 等)位于:

/var/solr/application-cores/List/conf

我的包含 ext 文件字段文件的数据目录位于:

/var/solr-data/List

所以我的 confFiles 看起来像:

<str name="confFiles">solrconfig.xml,data-config.xml,schema.xml,stopwords.txt,synonyms.txt,elevate.xml,../../../../solr-data/List/external_eff_views</str>

不允许使用通配符,因此我必须分别指定每个 ext 文件字段文件 :-(。

感谢@Jayendra 指出的链接,由于我在 solrconfig.xml 中设置了侦听器,因此我可以在复制后在从属设备上重新加载 ext 文件字段,例如

<listener event="newSearcher" class="org.apache.solr.schema.ExternalFileFieldReloader"/>
<listener event="firstSearcher" class="org.apache.solr.schema.ExternalFileFieldReloader"/>
于 2013-07-02T19:23:41.423 回答