2017-01-23 15 views
1

私は以下のようにSolr schema.xmlに整数フィールドを定義しました。 <field indexed="true" multiValued="false" name="build_status" stored="true" type="TrieIntField"/> コピーフィールドは次のようにブール型で定義されています。DSE Solr:CopyFieldの振る舞い

<field name="build_status_b" stored="false" indexed="true" type="boolean" multiValued="false"/> <copyField dest="build_status_b" source="build_status"/>

Iは、以下の値を有する整数であるbuild_status値を設定します。 0、1、45、67 私のcopyField - build_status_bがboolean型であるため、どちらかのエラーが表示されるか、または0と1を保持し、45と67は無視されます。しかし興味深いことに、私はbuild_status_b:(0 1 45 67)をすべての値で検索することができました。 copyFieldsは実際にどのように機能し、どのソース・フィールドにも索引が付けられていれば、フィールドbuild_status_bの型宣言のポイントは何ですか?

答えて

0

あなたはSolrのウィキ上で次のdocリンクを見ればあなたがブールフィールドタイプは、ブール値を形成するために、これらの値を解釈することがわかります:

https://cwiki.apache.org/confluence/display/solr/Field+Types+Included+with+Solr

が真かのいずれかを含みます偽です。最初の文字の "1"、 "t"、または "T"の値は真と解釈されます。最初の文字の他の値はすべてfalseと解釈されます。参考のため

CopyFieldsを用HERESにSolrのドキュメント:

https://cwiki.apache.org/confluence/display/solr/Copying+Fields

だから彼らが述べブール同等物の代表になり、あなたの上記の値について:

0 - false 
1 - true 
45 - false 
67 - false 
+0

はあなたのためにマークありがとう説明。これについてあなたの助けを感謝します。 – akr