Я запускаю Solr 4.2 с sunspot в Rails и проиндексировал около 6000 элементов. В настоящее время играю с функцией проверки орфографии. Но каждый раз, когда я вношу изменения в solrconfig.xml
(например, включаю и выключаю сопоставление), панель администратора из solr больше не отвечает.
Когда я пытаюсь выполнить запрос, появляется счетчик загрузки и ничего не происходит. Такое же поведение для других частей панели, таких как Core Admin или Статистика.
Перезапуск solr не помогает. Повторная индексация предметов тоже не помогает. Работает только удаление всех файлов индекса, перезапуск solr и повторная индексация всех элементов; но это болезненный способ работы.
Кто-нибудь знает, что здесь происходит? С чего начать отладку? Связано ли это с компонентом SpellChecker? Может я что-то здесь упустил.
Это часть из solrconfig.xml
, с которой я играю:
<searchComponent name="spellcheck" class="solr.SpellCheckComponent">
<str name="queryAnalyzerFieldType">text_general</str>
<lst name="spellchecker">
<str name="name">default</str>
<str name="field">name_texts</str>
<str name="field">taxon_permalinks_sms</str>
<str name="classname">solr.DirectSolrSpellChecker</str>
<!-- the spellcheck distance measure used, the default is the internal levenshtein -->
<str name="distanceMeasure">internal</str>
<!-- minimum accuracy needed to be considered a valid spellcheck suggestion -->
<float name="accuracy">0.5</float>
<!-- the maximum #edits we consider when enumerating terms: can be 1 or 2 -->
<int name="maxEdits">2</int>
<!-- the minimum shared prefix when enumerating terms -->
<int name="minPrefix">1</int>
<!-- maximum number of inspections per result. -->
<int name="maxInspections">5</int>
<!-- minimum length of a query term to be considered for correction -->
<int name="minQueryLength">4</int>
<!-- maximum threshold of documents a query term can appear to be considered for correction -->
<float name="maxQueryFrequency">0.01</float>
<!-- uncomment this to require suggestions to occur in 1% of the documents
<float name="thresholdTokenFrequency">.01</float>
-->
</lst>
<!-- a spellchecker that can break or combine words. See "/spell" handler below for usage -->
<lst name="spellchecker">
<str name="name">wordbreak</str>
<str name="classname">solr.WordBreakSolrSpellChecker</str>
<str name="field">name_texts</str>
<str name="field">taxon_permalinks_sms</str>
<str name="combineWords">true</str>
<str name="breakWords">true</str>
<int name="maxChanges">5</int>
</lst>
</searchComponent>
<requestHandler name="/select" class="solr.SearchHandler">
<lst name="defaults">
<str name="echoParams">explicit</str>
<int name="rows">10</int>
<str name="df">text</str>
<str name="spellcheck.dictionary">default</str>
<str name="spellcheck.dictionary">wordbreak</str>
<str name="spellcheck">on</str>
<str name="spellcheck.extendedResults">true</str>
<str name="spellcheck.count">10</str>
<str name="spellcheck.alternativeTermCount">5</str>
<str name="spellcheck.maxResultsForSuggest">5</str>
<str name="spellcheck.collate">true</str>
<str name="spellcheck.collateExtendedResults">true</str>
<str name="spellcheck.maxCollationTries">10</str>
<str name="spellcheck.maxCollations">5</str>
</lst>
<arr name="last-components">
<str>spellcheck</str>
</arr>
</requestHandler>
И, кстати, как я могу проверить, действительна ли моя конфигурация для различных компонентов?
ИЗМЕНИТЬ
Когда я пытаюсь открыть поиск напрямую, например curl или в моем браузере тоже зависает загрузка (например, вызов http://localhost:8982/solr/core1/select?q=*%3A*&wt=xml&indent=true
)