Solr部分更新无效

时间:2016-08-08 18:05:24

标签: spring solr

我试图使Solr部分更新正在使用Spring Data。

SolrTemplate solr; // autowired

public void updateEntry(final Entry entry) {
    PartialUpdate update = new PartialUpdate("id", entry.getId());
    update.add("foo_field", "hohoho");
    solr.saveBean(update);
    solr.commit();
}

然而,该文件没有任何反应 - 字段" id"不会改变。删除和创建正在发挥作用。任何想法都将不胜感激。

1 个答案:

答案 0 :(得分:0)

我正在使用spring data solr为我当前的项目做一些部分更新,它运行正常。这是我的代码:

PartialUpdate partialUpdate = new PartialUpdate("id", "yourId");
partialUpdate.setValueOfField("fieldToUpdate", "value");
solrTemplate.saveBean(partialUpdate);
solrTemplate.commit();

确保为您的核心提供正确的solrconfig:(https://wiki.apache.org/solr/Atomic_Updates

您需要在solrconfig.xml上激活updatelog,在schema.xml中需要定义_version_字段。