戯言

つらつらと気づいたことを書いていきます。人狼とか。

スポンサーサイト


上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

Solrの起動時に、org.apache.solr.common.SolrException: undefined field text が発生


Solrの起動時に、org.apache.solr.common.SolrException: undefined field text と言われる

標準の solrconfig.xml をコピーし、必要箇所だけ修正して使っている場合、
<str name="df">text</str> という設定が何か所かあります。

メッセージの出力原因は、text という存在しないフィールドを設定しているためなので、
実在するフィールド名に変えてしまえば、エラーは出なくなります。


スポンサーサイト

SolrのデフォルトはOR検索


Solrを るる鯖 で使えるか検討してます。

「第一 犠牲者」で検索すると、「第一」と「犠牲者」のOR検索になってしまい、
「第一球」などもヒットしてしまう状態に。

デフォルトAND検索で良いと思うんですが、なぜデフォルトORになっているかは分かりません。

solrconfig.xml にて、自動的にAND検索になるように設定することができます。

<requestHandler name="/select" class="solr.SearchHandler"> 内の
<lst name="defaults"> 内に、

  <str name="q.op">AND</str>

を追加すればよいです。

もちろん検索パラメータに、q.opを明示的に与えてあげてもOKです。



Solrでidカラムをint型に指定すると java.lang.NumberFormatException が発生



予め用意されている各種xmlの設定ファイルをコピーして使っている場合、
elevate.xml という、意図的に検索結果の順位を操作するための設定ファイルがありますが、
これが影響していました。

id というカラム名での設定が2行あります。

この2行をコメントアウトすることで解決します。


 <doc id="MA147LL/A" /> <!-- put the actual ipod at the top -->
 <doc id="IW-02" exclude="true" /> <!-- exclude this cable -->

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。