2016-09-21 8 views
0

私はSolr(バージョン6.2)でこの問題に直面しています。すべての値を使用してSolr 6.2明示的にフィールドをtrueに設定しても、ブール型の動的フィールド(_b接尾辞)は常にfalseに設定されます

<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> 

 <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"/> 

しかし、次のようなポスト文書:(XMLで)

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

またはデフォルト・スキーマは、いくつかの動的なフィールドを定義しています彼らはSolrにとってTRUEとみなされるはずだった。

"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では常にfalseになり、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

関連する問題