0

我已经配置了 Solr 并且索引/运行顺利。唯一的问题是它不能进行增量导入。它只转储如下消息:

INFO: id 是 SolrSchema 中的必填字段。但在 DataConfig 中找不到

但我将模式中的 id 定义为:

<field column="id" name="id_l"/>

另一条消息显示增量导入未完成:

信息:已完成实体的 ModifiedRowKey:获得的描述行:0

我的架构有:

<entity name="user"  pk="id" query="SELECT * FROM users"
   deltaImportQuery="SELECT * FROM users WHERE id = '${dataimporter.delta.id}'"
   deltaQuery="SELECT id FROM users WHERE updated_at > '${dataimporter.last_index_time}'"
 >
 ..

编辑: 以上是根据 Wiki 设置的。但是在查看了 example-DIH 的 DataConfig 之后,我将上面的内容更改为:

<entity name="user"  pk="id" query="SELECT * FROM users"
  deltaQuery="SELECT id FROM users WHERE updated_at > '${dataimporter.last_index_time}'"  
>

但它仍然不起作用。

我的问题是 - 我如何更改架构以便能够增量导入数据?

4

1 回答 1

0

我调试了app,问题是app或者mysql存储时间不正确,也就是比实际时间还早。因此,当运行 Delta 索引时,Solr 将正确的时间扔给查询,但由于它比“mysql”时间晚,所以它什么也没做。这个链接帮助我调试。

于 2012-09-02T15:44:51.580 回答