Solrの辞書チューニングをしていたら以下のような状態になったことがありました。
Could not load conf for core [コア名]
とかThere exists no core with name "[コア名]"
と出ているものの確かにそのコア名は存在していました。単に「コアがないよ」とだけ言われてその原因がわかりにくかったので、ここではこんな時にチェックすべき項目を挙げておきます。今のところ見つけたのは4パターンですが、また何か見つけたら追記します。
ちなみにsolrのバージョンは5.5です。
1.書式ミスがないか
当たり前ですが書式ミスがあるとエラーになります。例えば以下の状態だとエラーになります。
トマト=>
=>
の後に単語を書くべきなのに書いていないという書式ミスです。
2.同じ単語を登録していないか
userdict_ja.txt
に同じ単語を2回登録するとエラーになります。
緑茶パック,緑茶パック,リョクチャパック,カスタム名詞
緑茶パック,緑茶パック,リョクチャパック,カスタム名詞
ちなみにreadingの部分だけ変えてもエラーが出ました。
緑茶パック,緑茶パック,リョクチャパック,カスタム名詞
緑茶パック,緑茶パック,ミドリチャパック,カスタム名詞
3.改行の入れ忘れがないか
1つの語、シノニムを登録するときには1行+改行がセットになります。そのため、ファイル最終行は空行を入れないとエラーになります。
りんご,リンゴ,林檎[改行]
とまと,トマト[改行]
[空行]
4.分かち書きと読み半角スペースの数に相違がないか
userdict_ja.txt
で半角スペースを入れることによって分かち書きを表現できるということはこちらにも書かれている通りなのですが、その際、分かち書きの部分と読みの部分で半角スペースの個数に差があるとエラーになります。
緑茶パック,緑茶 パック,リョクチャパック,カスタム名詞
なので揃えましょう。
緑茶パック,緑茶 パック,リョクチャ パック,カスタム名詞
おまけ
まだサーバが立ち上がったばかりでもThere exists no core with name "[コア名]"
のポップアップが表示されていることがあります。ただ、その時は冒頭の画像のように赤でSolrCore Initialization Failures
とは出ていないはずなのでもう少し待ってからリロードしてみてください。特に問題なく動くはずです。