2015-03-19 36 views
0

有類似的問題,但他們沒有回答/解決我的問題,因此添加一個新的。DSE Solr,numfound> 0但文檔返回爲空,字段爲索引/商店設置爲true

我正在使用具有4個solr節點的Datastax 5節點集羣。 我在卡桑德拉創建具有下面的腳本單列和LZ4壓縮表 -

CREATE TABLE mykeyspace.mytable (
    myfield text, 
    PRIMARY KEY (myfield) 
); 

然後我說solrconfig.xml中和schema.xml中創造了核心爲我table.Below爲schema.xml中

快照
<types> 
    <fieldType name="someField" class="solr.TextField" positionIncrementGap="100"> 
    <analyzer type="query"> 
     <tokenizer class="solr.WhitespaceTokenizerFactory"/> 
     <filter class="solr.LowerCaseFilterFactory"/> 
     <filter class="solr.EnglishMinimalStemFilterFactory"/> 
    </analyzer> 
    <analyzer type="index"> 
     <tokenizer class="solr.WhitespaceTokenizerFactory"/> 
     <filter class="solr.WordDelimiterFilterFactory" generateWordParts="1" generateNumberParts="1" catenateWords="1" catenateNumbers="1" catenateAll="0" preserveOriginal="0" splitOnCaseChange="0"/> 
     <filter class="solr.LowerCaseFilterFactory"/> 
     <filter class="solr.EnglishMinimalStemFilterFactory"/> 
    </analyzer> 
    </fieldType> 
</types> 

<fields> 
    <field name="myfield" type="someField" indexed="true" stored="true" multiValued="false" /> 
</fields> 

<uniqueKey>myfield</uniqueKey> 
<defaultSearchField>myfield</defaultSearchField> 
<solrQueryParser defaultOperator="OR"/> 

我使用cassandra cqlsh向我的表插入幾條記錄。

INSERT INTO mykeyspace.mytable (myfield) VALUES ('testStr1'); 
INSERT INTO mykeyspace.mytable (myfield) VALUES ('testStr2'); 

從Solr的UI如果我檢查numdocs和maxdocs我看到插入的所有4個節點的直接反映。

在datastax日誌我也看到以下

DEBUG [Index WorkPool work thread-3] 2015-03-19 04:29:41,646 AbstractSolrSecondaryIndex.java (line 612) Updating key testStr1 on index mykeyspace.mytable 
DEBUG [Index WorkPool work thread-0] 2015-03-19 04:29:41,744 AbstractSolrSecondaryIndex.java (line 612) Updating key testStr2 on index mykeyspace.mytable 

現在,當我查詢甚至通過Solr的我得到numdocs> 0,但已超出DocsList是空的。在單獨的環境中,相同的steps/config可以像魅力一樣工作,並且我能夠完美地索引和查詢數據。

我得到信息的日誌像下面的兩種環境 -

Trying to load resource admin-extra.html for core mykeyspace.mytable by querying from local node with CL QUORUM 
No resource admin-extra.html found for core mykeyspace.mytable by querying from local node. 
Trying to load resource admin-extra.html for core mykeyspace.mytable by looking for legacy resources... 
No resource admin-extra.html found for core mykeyspace.mytable on any live node. 
Couldn't find resource: admin-extra.html, ignoring... 

有日誌中沒有其他錯誤/警告。 這裏有什麼可能是錯的?任何幫助表示讚賞。

#UPDATE 1 我改變了solrconfig硬性提交,但也沒有工作。 然後我試圖通過solrj添加數據和調用硬提交這也失敗,但以下情況例外 -

ERROR [http-8983-exec-2] 2015-03-20 04:51:58,360 SolrDispatchFilter.java (line 696) Error request exception: Solr requires that request parameters sent using application/x-www-form-urlencoded content-type can be read through the request input stream. Unfortunately, the stream was empty/not available. This may be caused by another servlet filter calling ServletRequest.getParameter*() before SolrDispatchFilter, please remove it. 

最後我改變了表架構有一個整數主鍵和張貼的事情正確,像變魔術一樣。

我還不清楚以前的模式是什麼問題!

+0

DSE什麼版本? – sbtourist 2015-03-21 11:43:47

+0

DSE 4.5安裝。 – mbaxi 2015-03-21 18:09:34

+0

你的意思是4.5.0嗎? – sbtourist 2015-03-23 09:36:26

回答

-1

你不能索引列家族,只有一個列,該列在同一時間它的主鍵

這是Solr的限制

相關問題