0

我有一组在 Solr 中索引的字段。

现有文件:

<doc>
   <field name="id">123</field> 
   <field name="created_by">test_user</field> 
   <field name="user_updated"/> 
</doc>

当我搜索为 q=created_by:test_user 时,我会返回此文档。“created_by”和“user_updated”都被复制到“text”字段。

我正在尝试使用以下内容更新字段:

http://localhost:8983/solr/update?commit=true -H "Content-Type: text/xml" --data-binary
'<update>
  <add>
    <doc>
      <field name="id">123</field>
      <field name="user_updated" update="set">abc</field>
    </doc>
   </add>
</update>'

这会正确更新“user_updated”字段,当我搜索“q=abc”或“q=test_user”时,我会返回此文档。但是 q=created_by:test_user 的现有索引结果不再起作用。

我是否在这里做错了什么?或任何其他方式让它工作?

4

1 回答 1

0

created_by字段是否标记为已存储?
你也有 schema.xml 中的版本字段吗?
检查solr-4-0-partial-documents-update
所有需要更新的字段都应标记为已存储
动态字段不应该有问题,因为只有已经存在的字段会被更新,其余字段将保持原样

于 2013-07-05T14:33:38.340 回答