首页 文章

Solr Delta Import Query正在删除中的所有内容

提问于
浏览
2

我试图让delta导入查询适用于我的solr架构 . 当我执行完全导入时,solr索引会正确填充 . 但是,当我尝试执行delta导入时,看起来它正常处理 - 并在solr gui中给出以下结果:

Indexing completed. Added/Updated: 0 documents. Deleted 0 documents.
Requests: 1, Fetched: 0, Skipped: 0, Processed: 0

这是正确的,因为自完整查询以来数据库应该没有更新 .

但是,当我在增量更新后对核心进行完整查询时,它会显示所有文档都已消失,并且核心为空!所有这些我通过solr web admin gui做 .

这是增量导入处理程序配置文件:

<entity name="episode" query="select episode_id from db.episode"
  deltaQuery="select episode_id from db.episode where last_modified &gt; '${dih.last_index_time}'"
  deltaImportQuery="select episode_id from db.episode where episode_id = '${dih.delta.episode_id}'">
</entity>

以下是模式文件中的相关内容:

<fields>
    <field name='episode_id' indexed="true" stored="true" type='int' required="true"/>
</fields>

这是我的solrconfig.xml中的DIH内容:

<lib dir="${solr.install.dir:../../../..}/lib/" regex="mysql-connector-java-5.1.35-bin.jar" />
<lib dir="${solr.install.dir:../../../..}/dist/" regex="solr-dataimporthandler-.*\.jar" />
<requestHandler name="/dataimport" class="org.apache.solr.handler.dataimport.DataImportHandler">
  <lst name="defaults">
    <str name="config">episodeDIHconfigfile.xml</str>
  </lst>
</requestHandler>

有什么想法会发生这种情况吗?我认为delta查询只会添加到索引中,而不仅仅是删除所有内容!所有人都非常感谢......

1 回答

  • 8

    既然你说're using the admin gui, I'我猜你已经勾选了那个小"clean"复选框,这意味着你的导入开始于 clean 标志设置为true . 取消选中该复选框,然后重试 .

    如果将 clean 设置为true,则在索引开始之前擦除整个索引 . 对于完全导入非常有用,但显然不适用于增量!

相关问题