2014-10-06 50 views
0

我正在運行帶有5個核心的Sol 3.6版本。每當我的應用程序啓動時,我都會進行全面導入。 我只是簡單地調用http://:/ solr // dataimport?command = full-importSolr full-import存在問題

截至目前,我面臨着兩個奇怪的問題。

  1. 其中一個核心的數據是空的(索引被刪除)。不知道爲什麼。
  2. 在我的查詢中,我已經限制只加載6個月的數據。有時我得到的數據比6個月大得多。

問題: 默認「clean = true」是什麼意思?在我的情況是這樣。這意味着我不會看到數據一旦我執行以下查詢? HTTP://:/ solr的//選擇/ Q = %3A &版本= 2.2 &開始= 0 &行= 10 &縮進=上

+0

清潔= true表示您的索引已被刪除,並且a新進口完成 – 2014-10-06 11:41:48

+0

是的正確!它何時刪除索引?在完全導入之前或完成之後?在我的情況下,我看到數據,直到完成索引。是否正常工作? – Javadroider 2014-10-07 05:57:18

+0

直到提交完成後纔會發生。使用'clean = true'時,將首先發送DELETE查詢,然後對文檔進行索引。但是,在提交完成之前,這些都不會反映在搜索中,通常只有在完整導入完成後纔會執行此操作。但是,如果您設置了自動提交,那麼只要發生第一個自動提交,DELETE就會反映在搜索器中。 – arun 2014-10-09 19:39:29

回答

0

我經歷了同樣的問題?

使用clean = false執行全導入意味着DIH將在導入之前從索引中清除所有文檔。該過程完成後,DIH將執行提交,使更改可見。

發生了什麼事給我的是以下幾點:

  1. 執行全面導入了數據庫查詢需要很長的

  2. 通過查詢刪除的文件,與commitWithIn集。

  3. 索引爲空。

除此之外,這個問題並沒有自動提交配置如下發生:

<autoCommit> 
    <maxTime>1000</maxTime> 
    <openSearcher>false</openSearcher> 
</autoCommit> 

但沒有發生與

<autoCommit> 
    <maxTime>1000</maxTime> 
    <openSearcher>true</openSearcher> 
</autoCommit> 

與autoSoftCommit

<autoSoftCommit> 
    <maxTime>1000</maxTime> 
</autoSoftCommit>