2013-08-06 40 views
0

你好我使用solr查詢結果時出現奇怪的錯誤。 現在我添加一個單詞'anna'的簡單txt文件,重新啓動solr服務器,然後嘗試搜索該文檔。但我沒有得到任何結果?但如果我添加另一個文件的內容「安娜」,然後重新啓動solr。我只有一個結果。所以solr有一個bug,或者我不知道什麼?solrj查詢結果很奇怪的錯誤

我正在使用盧克,一切都很好我有兩個索引文件,當我嘗試使用盧克這個查詢一切都很好,我有2個結果。我也檢查我的循環,但它的一切都很好。所以也許solrj有一些問題?我正在使用solr-core和solrj ver 4.4.0。這是我的代碼:

QueryResponse qr; 
     try { 
      qr = fs.execute(solrServer); 



      System.out.println("QYERY RESPONSE : " + qr); 

      for (Entry<String, Object> r : qr.getResponse()) { 
       System.out.println("RESPONSE: " + r.getKey() + " -> " + r.getValue()); 
      } 
      SolrDocumentList dl = qr.getResults(); 
      System.out.println("--RESULT SIZE:[ " + dl.size()); 


     } catch (SolrServerException e) { 
      e.printStackTrace(); 
     } 

而且這是很奇怪的,因爲這是我的系統輸出:

{numFound = 2,開始= 1,文檔= [SolrDocument {file_id的= 9882, FILE_NAME =漉-search2.txt,file_create_user = -1,file_department = 10, file_mime_type = text/plain的,FILE_EXTENSION = txt文件, file_parents_folder = [5021,4781,341,-20,-1], 版本 = 1442647024934584320}]}

NUM發現是2,但我只有一個結果,所以它是solrj庫中的錯誤?

回答

1

查看響應時,顯示正在傳入的值爲start=1。start的默認值爲0,請參閱CommonQueryParameters以供參考。由於您的查詢只有兩個結果,並且起始值爲零,因此只需指定start=1即可索取第二個文檔。將此參數更改爲start=0,您將得到兩個結果。