[英]Delta-import collects the data but don't update the solr Index
我有一個Solr索引,我正在使用mysql DB進行DIH。
當我運行delta-import
命令時,將收集自上次完全導入以來數據庫中插入的4行,但索引不會更新!
841705 [qtp108251962-14] INFO org.apache.solr.handler.dataimport.DataImporter – Loading DIH Configuration: db-data-config.xml
841708 [qtp108251962-14] INFO org.apache.solr.handler.dataimport.DataImporter – Data Configuration loaded successfully
841709 [Thread-31] INFO org.apache.solr.handler.dataimport.DataImporter – Starting Delta Import
841709 [qtp108251962-14] INFO org.apache.solr.core.SolrCore – [db] webapp=/solr path=/dataimport params={command=delta-import} status=0 QTime=4
841716 [Thread-31] INFO org.apache.solr.handler.dataimport.SimplePropertiesWriter – Read dataimport.properties
841719 [Thread-31] INFO org.apache.solr.handler.dataimport.DocBuilder – Starting delta collection.
841719 [Thread-31] INFO org.apache.solr.handler.dataimport.DocBuilder – Running ModifiedRowKey() for Entity: employees
841720 [Thread-31] INFO org.apache.solr.handler.dataimport.JdbcDataSource – Creating a connection for entity employees with URL: jdbc:mysql://localhost/sampledb
841735 [Thread-31] INFO org.apache.solr.handler.dataimport.JdbcDataSource – Time taken for getConnection(): 15
841736 [Thread-31] INFO org.apache.solr.handler.dataimport.DocBuilder – Completed ModifiedRowKey for Entity: employees rows obtained : 4
841736 [Thread-31] INFO org.apache.solr.handler.dataimport.DocBuilder – Completed DeletedRowKey for Entity: employees rows obtained : 0
841736 [Thread-31] INFO org.apache.solr.handler.dataimport.DocBuilder – Completed parentDeltaQuery for Entity: employees
841743 [Thread-31] INFO org.apache.solr.handler.dataimport.DocBuilder – Delta Import completed successfully
841743 [Thread-31] INFO org.apache.solr.handler.dataimport.DocBuilder – Time taken = 0:0:0.26
841744 [Thread-31] INFO org.apache.solr.update.processor.LogUpdateProcessor – [db] webapp=/solr path=/dataimport params={command=delta-import} status=0 QTime=4 {} 0 4
這是db-data-config.xml:
<dataConfig>
<dataSource driver="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost/sampledb" user="root" password="system" />
<document>
<entity name="employees" pk="ID"
query="SELECT * FROM employees"
deltaImportQuery="SELECT * FROM employees WHERE ID='${dataimporter.delta.id}'"
deltaQuery="SELECT ID from employees WHERE TRANSTIME > '${dataimporter.last_index_time}'">
<field column="ID" name="id" />
<field column="NAME" name="name" />
<field column="CITY" name="city" />
<field column="SERVICE_ID" name="service_id" />
</entity>
</document>
</dataConfig>
但是仍然沒有更新索引...我該如何解決這個問題?
這是核心的conf文件:
https://github.com/MuhammadHewedy/db_cores/tree/master/db/conf https://github.com/MuhammadHewedy/db_cores/blob/master/db/conf/db-data-config.xml https:// github.com/MuhammadHewedy/db_cores/blob/master/db/conf/schema.xml https://github.com/MuhammadHewedy/db_cores/blob/master/db/conf/solrconfig.xml
謝謝。
嘗試這個:
轉到您的/blob/master/db/conf/dataimport.properties添加以下內容:
# URL params [mandatory]
# remainder of URL
params=/select?qt=/dataimport&command=delta-import&clean=false&commit=true
查看http://wiki.apache.org/solr/DataImportHandler此文檔。
重要的是commit = true。 通過運行以下命令來檢查是否看到新數據:
http://localhost:8080/solr/update?commit=true
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.