0

У меня работает мой сайт с помощью ElasticSearch, используя Tire.elasticsearch останавливает индексирование новых документов через некоторое время, используя Tire

В фоновом режиме у меня есть задача rake, которая перебирает тысячи объектов и создает по одной записи для каждого из них.

Сначала записи индексируются, и каждый раз, когда я обновляю свой сайт, я вижу, что количество найденных записей растет. Но в какой-то момент он просто останавливается. Он сохраняет записи в mysql, но больше не индексирует их. Обратите внимание, что сайт и поиск все еще запущены.

Почему? Есть какой-то замок или ...?


редактировать: Вот ошибки я вижу в elasticsearch.log

[2013-03-16 08: 49: 34344] [WARN] [netty.channel.socket.nio.AbstractNioSelector] Не удалось принять соединение. java.io.IOException: Слишком много открытых файлов


[Thakos] [карты] [2] не удалось прочитать последние Infos сегмент на флеш java.io.FileNotFoundException:/USR/местные/доля/elasticsearch/данные/elasticsearch/узлы/0/индексы/карты/2/индекс/segments_3 (Слишком много открытых файлов)

Так что я думаю, что это нужно, мне нужно посмотреть на то, как справиться с этим ошибка.

+0

Вы посмотрели свои рейки, рельсы, базу данных, журналы elasticsearch? – phoet

+0

Спасибо. Мне было глупо смотреть в журналы elasticsearch ... Вы можете добавить ответ, если хотите, чтобы количество доступных открытых дескрипторов было доступно, как это предлагается на официальном сайте: http://www.elasticsearch.org /guide/reference/setup/installation.html, и я приму это. – Robin

ответ

0

основном я пропустил важную часть «Руководство по установке»: http://www.elasticsearch.org/guide/reference/setup/installation.html

У меня было только как 1024 дескрипторов открытых файлов, разрешенных для запуска пользовательского elasticsearch, и мне нужно было около 32к (макс установлен в 64k).

С этими настройками все работает отлично.

Смежные вопросы