Sunspot Unicode Search работает локально, но не работает - PullRequest
3 голосов
/ 23 января 2012

У меня есть приложение, работающее с Sunspot Solr локально, поддерживающее юникод без проблем. В производстве, однако, с Heroku и Websolr, все Unicode-запросы возвращают ноль результатов. Я подтвердил с Websolr Поддержка, которую я могу запросить непосредственно против их системы Solr с Unicode и работает нормально. Когда я запрашиваю из моего производственного приложения, они видел что-то подобное в журнале: q = Ø £ Ø ± س٠† ا

Так что, похоже, это не связано с Websolr. Я также пытался запустить локальное приложение в производственном режиме (указывает на Websolr), и как только я это сделаю что запросы снова не дают результатов!

Мне интересно, сталкивался ли кто-нибудь с подобной проблемой, и где я должен искать ответы? Я пытался установить уровень журнала производства Solr ИНФОРМАЦИЯ или больше, чтобы увидеть, что отправляется в Solr, но по какой-то причине это также не отображается в журнале сервера.

Спасибо

Ответы [ 2 ]

0 голосов
/ 25 февраля 2012

Когда Sunspot переключился на использование HTTP POST для своих запросов, он (и его зависимость, RSolr), к сожалению, не указал кодировку для своего заголовка Content-type.Это приводит к тому, что Tomcat по умолчанию использует ISO-8859-1 в соответствии со спецификацией сервлета, что приводит к неправильному декодированию символов UTF-8.

Более поздняя версия RSolr, 1.0.7, исправила это, указавправильный заголовок типа контента с кодировкой UTF-8.Поэтому пользователи Sunspot, которые видят эту ошибку, должны убедиться, что их зависимость от гемов RSolr была обновлена ​​до версии 1.0.7 или выше.

0 голосов
/ 09 февраля 2012

Я не уверен, но, возможно, по какой-то причине кажется, что при отправке запроса WebSolr может не отправлять какой набор символов использовать, поэтому ваш сервер приложений (я не уверен, будет ли JBOSS или Tomcat) думать, чтоон должен использовать набор символов по умолчанию (который может быть ISO-8859-1).Я думаю, что это должно быть ошибка с продуктом.

...