2016-09-21 52 views
0

我正在面對Solr(版本6.2)的此問題。默認架構中定義了一些動態字段:即使將字段明確設置爲true,Solr 6.2布爾動態字段(_b後綴)始終設置爲false

 <dynamicField name="*_i" type="int" indexed="true" stored="true"/> 
     <dynamicField name="*_is" type="ints" indexed="true" stored="true"/> 
     <dynamicField name="*_s" type="string" indexed="true" stored="true" /> 
     <dynamicField name="*_ss" type="strings" indexed="true" stored="true"/> 
     <dynamicField name="*_l" type="long" indexed="true" stored="true"/> 
     <dynamicField name="*_ls" type="longs" indexed="true" stored="true"/> 
     <dynamicField name="*_t" type="text_general" indexed="true" stored="true"/> 
     <dynamicField name="*_txt" type="text_general" indexed="true" stored="true"/> 
     <dynamicField name="*_b" type="boolean" indexed="true" stored="true"/> 
     <dynamicField name="*_bs" type="booleans" indexed="true" stored="true"/> 
     <dynamicField name="*_f" type="float" indexed="true" stored="true"/> 
     <dynamicField name="*_fs" type="floats" indexed="true" stored="true"/> 
     <dynamicField name="*_d" type="double" indexed="true" stored="true"/> 
     <dynamicField name="*_ds" type="doubles" indexed="true" stored="true"/> 

但是,當一個帖子像下面這樣的文件:

[{ 
id:7, 
isActive_b:true, 
isReachable_b: 1, 
isWorthty_b:"True" 
}] 

或(XML格式):

<add> 
<doc> 
    <field name="id">7</field> 
    <field name="isActive_b">true</field> 
    <field name="isReachable_b">1</field> 
    <field name="isWorthty_b">"True"</field> 
</doc> 
</add> 

使用所有的值這應該被認爲是對Solr真實的。

"BoolField: Contains either true or false. Values of "1", "t", or "T" in the first 
character are interpreted as true. Any other values in the first character 
are interpreted as false." (Solr Ref Guide 6.2) 

結果如下:image

"response":{"numFound":1,"start":0,"maxScore":12.316666,"docs":[ 
     { 
     "id":"7", 
     "isActive_b":false, 
     "isReachable_b":false, 
     "isWorthty_b":false, 
     "_version_":1546068272520101888}] 
    }} 

或(在XML):

<result name="response" numFound="1" start="0" maxScore="12.316666"> 
    <doc> 
    <str name="id">7</str> 
    <bool name="isActive_b">false</bool> 
    <bool name="isReachable_b">false</bool> 
    <bool name="isWorthty_b">false</bool> 
    <long name="_version_">1546068272520101888</long></doc> 
</result> 

同樣的問題或與它的溶液的任何人?

回答

1

我們有同樣的問題。 6.2時總是錯誤,5.5時正常工作。 奇怪的是,使用Solr Web UI布爾值設置正確。

調試我們在查詢後立即放置一個斷點,當返回SolrDocument時,布爾變量已經錯誤。

我們正在回滾到5.5。

+1

感謝您的回答!你甚至進一步調試它!我想我會爲Solr的開發者們開一個問題吧! 否則方法是回滾到5.5,如你所說... – Daniel

+1

他們回答了我的問題她的https://issues.apache.org/jira/browse/SOLR-9553。似乎問題在版本6.2.1上得到修復,但我沒有測試它! – Daniel

+1

問題在版本6.2.1上修復! – Daniel

相關問題