Перестал работать хрон, при запуске вручную жалуется на rustemmer РЕШЕНО!

Главные вкладки

Аватар пользователя mikelo mikelo 18 января 2011 в 7:09

С недавних пор перестал работать хрон на сайте.
Запускаю вручную mysite.kz/cron.php отрабатывает, а потом выдает ошибку:
Fatal error: Maximum execution time of 240 seconds exceeded in /var/www/mysite.kz/www/sites/all/modules/rustemmer/rustemmer.module on line 14
Как восстановить работу хрона? Почему жалуется на rustemmer?

Комментарии

Аватар пользователя Azerot Azerot 18 января 2011 в 10:29

Попробуйте уменьшить количество индексируемых за один раз элементов в настройках, может начнёт успевать.

Аватар пользователя mikelo mikelo 18 января 2011 в 15:18

Попробовал уменьшить до 10 элементов, все равно падает в ошибку. Посмотрел к отчетах, оказывается хрон не запускался уже 12 недель! Sad
Подскажите, пожалуйста, дальнейшие действия.

Аватар пользователя Softovick Softovick 18 января 2011 в 15:25

Увеличивайте время выполнение на скрипт, если хостер позволяет. Можно попробовать временно увеличить пока не добьетесь, что отработает cron, потом снизте и смотрите как дальше будет.... Если не позволяет - ищите другого хостера.

Аватар пользователя mikelo mikelo 18 января 2011 в 15:46

Самое интересное, что сайт у меня на сервере под Debian 5. До этого был админ, но он уволился и не оставил инструкций Smile

Аватар пользователя Azerot Azerot 18 января 2011 в 23:28

240 секунд на 10 элементов более чем дофига. Попробуйте ещё почистить индекс и попробовать построить его заново.

Аватар пользователя mikelo mikelo 19 января 2011 в 20:23

Извиняюсь за дезинформацию. Не сработало, отключил rustemmer, вывалилась следующая ошибка: Fatal error: Maximum execution time of 240 seconds exceeded in /var/www/mysite.kz/www/modules/search/search.module on line 334
Точно клиника Sad

Аватар пользователя mikelo mikelo 20 января 2011 в 5:55

Почистил таблицу search_index в ней было 1,5 мил. записей. Сейчас в ней 0 записей соответственно. Запускаю хрон, все равно валится. Все те же ошибки...

Аватар пользователя Azerot Azerot 20 января 2011 в 8:02

Вы что вручную чистили что ли, не через админку?
Посмотрел 334-ю строку, у меня там оператор массовой замены символов preg_replace.
Если рассуждать логически - уж не зацикливание ли какое происходит? Но если так, то без отладки тут ничего не сделаешь.

Ещё ключ к ответу может дать ваша фраза "с недавних пор". Что изменилось с недавних пор? Новые модули - материалы?

Аватар пользователя mikelo mikelo 21 января 2011 в 8:33

Чистил вручную в БД сайта таблицу search_index. Нашел разработчика сайта, говорит, что стандартный поиск был им отключен, что работал sphinx поиск.
Написал ему письмо, жду.

Аватар пользователя fairwind fairwind 21 января 2011 в 9:06

"mikelo" wrote:
Fatal error: Maximum execution time of 240 seconds exceeded in /var/www/mysite.kz/www/modules/search/search.module on line 334

"mikelo" wrote:
стандартный поиск был им отключен, что работал sphinx поиск.

Насколько мне известно, rustemmer имеет смысл только при стандартном поиске, у сфинкса свой теммер. Попробуйте отключить стандартный поиск и rustemmer, и включить модуль сфинкс (если отключен)

Аватар пользователя Azerot Azerot 21 января 2011 в 11:14

Quote:
Чистил вручную в БД сайта таблицу search_index.

Ну и нафига? Админка для чего дана? Вот почистили вы search_index, а между прочим к модулю поиска также относятся таблицы search_dataset, search_total, search_node_links. Я вот, например, не уверен, что у поиска не сорвёт крышу, если у него вдруг неожиданно стала пустой таблица search_index, а содержимое остальных осталось таким же.

Если со сфинксом не получится, я бы тогда посоветовал отключить в админке модуль search, ДЕИНСТАЛЛИРОВАТЬ его, а затем снова включить, чтобы все нужные таблицы создались по новой.

Аватар пользователя mikelo mikelo 22 января 2011 в 8:54

Оказывается модуль rustemmer совсем не при чем. Разработчик мне написал, что он трогал системный модуль search для того, чтобы подцепить sphinx поиск на сайт и поиск drupal вообще не используется, так что в индексации смысла нет.
Я обновлял drupal и этот модуль заменил. Вернул модуль search из бэкапа до обновления и хрон, и поиск заработали. Sphinx стоит отдельным приложением без модуля sphinx в drupal. Запускается по системному хрону Debian.
Всем спасибо за участие!