Приветствую всемогущий коллективный разум
Проблема такая: Необходимо найти источник ошибки сохраняемой в watchlog при работе cron
Предыстория: Решился наконец испробовать поиск через друпаловский движок. Включил и получил ...
Во первых поиск далеко не полный - т.е. находит далеко не все документы с данным ключевым словом.
А во вторых - при выполнении переиндексации через cron в watchlog сыпется огромное количество ошибок типа:
Изменения на библиотеку mysqli не приносят облегчения - ошибка подобная, текст несколько другой.
Для идентификации причины, хотелось бы выяснить откуда производиться вызов этой функции. Пробовал модуль trace, но он не помог в этом - ошибки появляются в watchlog, а он об этом в своих логах не пишет.
Опыта трассировки и отлова ошибок в PHP у меня практически нет, в целях экономии времени вынужден просить помощь у элитарного клуба
Надеюсь и надеюсь, что не зря
Версия 5.7. Есть CCK поля практически во всех нодах
Комментарии
Эта методика пригодится и вам - Быстрая диагностика зависания крона
Спасибо за ответ, но дело в том, что модуль, который генерирует ошибки почти на 100% search. Меня интересует, откуда и с какими аргументами вызывается эта функция, когда возникает ошибка.
search.module
строки 317, 855 и 865
Спасибо - я это видел
Только список неполный (к тому же строки 855 и 865 к процессу переиндексации не имеют отношения) - serach еще хуки из других модулей вызывает при индексации и там куча вызовов этой функции тоже присутствует. Хорошо бы понять в каком месте и при каких условиях возникает эта ошибка.
Можно конечно в db_result встроить обработчик, но мне не совсем понятен механизм как drupal в php отлавливает ошибки и как мне в коде (встроенном после вызова mysql_num_rows) понять, что она произошла, что бы сбросить на диск стек вызовов с переменными.