文系プログラマによるTIPSブログ

文系プログラマ脳の私が開発現場で学んだ事やプログラミングのTIPSをまとめています。

何故あなたはsolrが動かせないのか

solrが動かない!!
手順通りやってみたけど大量にエラーがでる!
せっかくsolrに興味があってもエラー出まくりでやる気が削がれ、諦めた方も多いのではないでしょうか。

最近solrのバージョン1.3から1.4に上げる作業をしたんですが・・・
エラー出すぎて魂抜けました
そこで何故エラーが出まくるのか考えたんですが、何度考え直しても以下の答えに行き着きます。

ドキュメントがゴミ。
サンプルがすぐ動くように作られていない。

はい。それはもう鬼畜です。
動かないのはあなたのせいではありません
どう考えてもドキュメントがゴミなのと、初期の設定ファイルが良くないのです。
単にsolr.zipを解凍して、sampleからcoreをコピーして動かそうとしても動かないんです。
随所に散りばめられた細かい罠の数々が邪魔をします。
少し見渡しただけで以下の罠があります。
solr3.6のpingのエラー:org.apache.solr.common.SolrException: undefined field text - treeのメモ帳
solr3.6の起動時のエラー:org.apache.solr.common.SolrException: undefined field text - treeのメモ帳
solr3.6:solrj3.6を使う時に不足しているjar - treeのメモ帳
solr4.0から導入された_version_フィールド - treeのメモ帳
org.apache.lucene.index.CorruptIndexException: Unknown format version: -9 - treeのメモ帳

そして問題児であるsolrconfig.xml君もあなたの邪魔をします。
超巨大なsolrconfig.xml(1000行以上ある)はどこを直したらいいか、最初は絶対解りません。
不要な設定も多く「サンプル用にmaxで設定書いてみました〜」的な感じなので、行数が異常に多いのです。
schema.xmlも余計な定義が多いです。いらいないもの削ると100行〜200行くらいになるんです。
完全に嫌がらせです。solrconfig.xmlに至っては、未だに理解できていない設定が多いです。
solrconfig.xmlは正直ほとんど触らない設定ばかりなので、ファイルを分割するなりして改善してほしいものです。

流石にsolrの事は諦めてね(^^)なんて言えないので、
tree-tipsの方にsolrの環境構築をする手順をスクリーンショット付きで解説していますので、
是非参考にしてみて下さい!!
■ 環境構築(java + tomcat7 + seasar + solr3.6)
tree-tips: solrのインストール | Apache Solr
■ インデックス生成とインデックス検索
tree-tips: solrjでインデックス生成・検索 | Apache Solr

Apache Solr入門 ―オープンソース全文検索エンジン

Apache Solr入門 ―オープンソース全文検索エンジン