Solr 使用外部文件提升结果。未反映外部文件中的更改

Solr 使用外部文件提升结果。未反映外部文件中的更改,solr,Solr,我正在将Drupal7与apachesolr模块一起使用。 我有一个外部文件字段来提高我想要的结果。该文件的名称为external_eff_ranking。在模式中,我有: <fieldType name="pfloat" class="solr.FloatField" omitNorms="true"/> <fieldType name="file" keyField="id" defVal="1" stored="false" indexed="false" class="

我正在将Drupal7与apachesolr模块一起使用。 我有一个外部文件字段来提高我想要的结果。该文件的名称为external_eff_ranking。在模式中,我有:

<fieldType name="pfloat" class="solr.FloatField" omitNorms="true"/>
<fieldType name="file" keyField="id" defVal="1" stored="false" indexed="false" class="solr.ExternalFileField" valType="pfloat"/>
<dynamicField name="eff_*" type="file"/>
这正如预期的那样工作,结果根据文件中的值提升。问题是,当值更改时,结果不会反映更改。我知道我需要以某种方式提交更改,但我不知道如何提交

我试过这样的方法:

curl http://localhost:8983/solr/update?commit=true -H "Content-Type: text/xml" --data-binary '<commit />'
curlhttp://localhost:8983/solr/update?commit=true -H“内容类型:文本/xml”--数据二进制”
但没有起作用

已解决

我的solrconfig.xml中的以下行解决了问题:

<requestHandler name="/reloadCache" class="org.apache.solr.search.function.FileFloatSource$ReloadCacheRequestHandler" />


然后我点击这个网址(http://localhost:port/reloadCache)每次文件更新后,

看起来这是由于solr中的一个bug影响了缓存结果。可能正在尝试帮助?

我在solrconfog.xml中添加了重新加载缓存处理程序,如下所示:这就成功了。谢谢
<requestHandler name="/reloadCache" class="org.apache.solr.search.function.FileFloatSource$ReloadCacheRequestHandler" />