Почему-то когда включаю модуль "Update Status" на страницах сайта вылезает не совсем понятное сообщение. Оно занимает весь экран, повторяясь многократно. Происходит это как на локалке, так и на сервере. В чём может быть проблема?
Сообщение:
Warning: MySQL server has gone away query: INSERT INTO watchdog (uid, type, message, variables, severity, link, location, referer, hostname, timestamp) VALUES (1, 'php', '%message in %file on line %line.', 'a:4:{s:6:\"%error\";s:12:\"user warning\";s:8:\"%message\";s:2191490:\"MySQL server has gone away\nquery: UPDATE batch SET token = 'ed28a98a5c0527e18dc574dd1740aa16', batch = 'a:10:{s:4:\\"sets\\";a:2:{i:0;a:12:{s:7:\\"sandbox\\";a:0:{}s:7:\\"results\\";a:0:{}s:7:\\"success\\";b:0;s:10:\\"operations\\";a:85:{i:0;a:2:{i:0;s:20:\\"_locale_batch_import\\";i:1;a:1:{i:0;s:45:\\"modules/admin_menu/translations/general.ru.po\\";}}i:1;a:2:{i:0;s:20:\\"_locale_batch_import\\";i:1;a:1:{i:0;s:42:\\"modules/admin_menu/translations/root.ru.po\\";}}i:2;a:2:{i:0;s:20:\\& in Z:\home\drupal\www\includes\database.mysqli.inc on line 128
Комментарии
проверьте состояние таблицы watchdog через phpmyadmin. скорее всего ее чинить надо.
Не помогает. При проверке статус "OK", на всякий случай отремонтировал. Без изменений.
MySQL "отваливается" при попытке записи в таблицу. Проблемы на его уровне.
Хотя... Он ведь ругается не при записи в watchdog, а пишет в него ошибку, возникающую при update таблицы batch
таааак, а в таблице batch у нас что?
Так пока ничего и не выяснилось. Проблема повторяется и на локалке, при этом никаких зависимостей от установленных модулей и т.д. не наблюдается.
Наблюдаю такую же проблему на Drupal 6.12. На форуме запросился на регистрацию новый (всего 3-й) пользователь. После изменения его статуса на Активный (это была последняя успешная операция) попытки вызвать Отчет о состоянии (http://www.mqlsoft.ru/admin/reports/status) заканчиваются ошибкой (при этом Доступные обновления иногда успешно проходят - Последняя проверка: 0 сек назад (Проверить вручную)):
Warning: MySQL server has gone away query: INSERT INTO watchdog (uid, type, message, variables, severity, link, location, referer, hostname, timestamp) VALUES (1, 'php', '%message in %file on line %line.', 'a:4:{s:6:\"%error\";s:12:\"user warning\";s:8:\"%message\";s:129:\"MySQL server has gone away\nquery: UPDATE variable SET value = 'b:1;' WHERE name = 'drupal_http_request_fails'\";s:5:\"%file\";s:49:\"/home/mysite/public_html/includes/bootstrap.inc\";s:5:\"%line\";i:519;}', 3, '', 'http://www.mqlsoft.ru/admin/reports/updates/check?destination=admin%2Fre...', 'http://www.mqlsoft.ru/admin/reports/status', '83.239.151.47', 1242759923) in /home/mysite/public_html/includes/database.mysqli.inc on line 128
Warning: MySQL server has gone away query: INSERT INTO watchdog (uid, type, message, variables, severity, link, location, referer, hostname, timestamp) VALUES (1, 'php', '%message in %file on line %line.', 'a:4:{s:6:\"%error\";s:12:\"user warning\";s:8:\"%message\";s:85:\"MySQL server has gone away\nquery: DELETE FROM cache WHERE cid = 'variables'\";s:5:\"%file\";s:45:\"/home/mysite/public_html/includes/cache.inc\";s:5:\"%line\";i:179;}', 3, '', 'http://www.mqlsoft.ru/admin/reports/updates/check?destination=admin%2Fre...', 'http://www.mqlsoft.ru/admin/reports/status', '83.239.151.47', 1242759923) in /home/mysite/public_html/includes/database.mysqli.inc on line 128
Warning: MySQL server has gone away query: INSERT INTO watchdog (uid, type, message, variables, severity, link, location, referer, hostname, timestamp) VALUES (1, 'php', '%message in %file on line %line.', 'a:4:{s:6:\"%error\";s:12:\"user warning\";s:8:\"%message\";s:26250:\"MySQL server has gone away\nquery: UPDATE cache_update SET data = 'a:3:{s:6:\\"drupal\\";a:10:{s:5:\\"title\\";s:6:\\"Drupal\\";s:10:\\"short_name\\";s:6:\\"drupal\\";s:10:\\"dc:creator\\";s:6:\\"Drupal\\";s:11:\\"api_version\\";s:3:\\"6.x\\";s:17:\\"recommended_major\\";s:1:\\"6\\";s:16:\\"supported_majors\\";s:1:\\"6\\";s:13:\\"default_major\\";s:1:\\"6\\";s:14:\\"project_status\\";s in /home/mysite/public_html/includes/database.mysqli.inc on line 128
Warning: MySQL server has gone away query: INSERT INTO watchdog (uid, type, message, variables, severity, link, location, referer, hostname, timestamp) VALUES (1, 'php', '%message in %file on line %line.', 'a:4:{s:6:\"%error\";s:12:\"user warning\";s:8:\"%message\";s:130:\"MySQL server has gone away\nquery: UPDATE variable SET value = 'i:1242759944;' WHERE name = 'update_last_check'\";s:5:\"%file\";s:49:\"/home/mysite/public_html/includes/bootstrap.inc\";s:5:\"%line\";i:519;}', 3, '', 'http://www.mqlsoft.ru/admin/reports/updates/check?destination=admin%2Fre...', 'http://www.mqlsoft.ru/admin/reports/status', '83.239.151.47', 1242759944) in /home/mysite/public_html/includes/database.mysqli.inc on line 128
Warning: MySQL server has gone away query: INSERT INTO watchdog (uid, type, message, variables, severity, link, location, referer, hostname, timestamp) VALUES (1, 'php', '%message in %file on line %line.', 'a:4:{s:6:\"%error\";s:12:\"user warning\";s:8:\"%message\";s:85:\"MySQL server has gone away\nquery: DELETE FROM cache WHERE cid = 'variables'\";s:5:\"%file\";s:45:\"/home/mysite/public_html/includes/cache.inc\";s:5:\"%line\";i:179;}', 3, '', 'http://www.mqlsoft.ru/admin/reports/updates/check?destination=admin%2Fre...', 'http://www.mqlsoft.ru/admin/reports/status', '83.239.151.47', 1242759944) in /home/mysite/public_html/includes/database.mysqli.inc on line 128
Warning: MySQL server has gone away query: INSERT INTO watchdog (uid, type, message, variables, severity, link, location, referer, hostname, timestamp) VALUES (1, 'php', '%message in %file on line %line.', 'a:4:{s:6:\"%error\";s:12:\"user warning\";s:8:\"%message\";s:174:\"MySQL server has gone away\nquery: SELECT dst FROM url_alias WHERE src = 'admin/reports/updates' AND language IN('ru', '') ORDER BY language DESC\";s:5:\"%file\";s:44:\"/home/mysite/public_html/includes/path.inc\";s:5:\"%line\";i:69;}', 3, '', 'http://www.mqlsoft.ru/admin/reports/updates/check?destination=admin%2Fre...', 'http://www.mqlsoft.ru/admin/reports/status', '83.239.151.47', 1242759944) in /home/mysite/public_html/includes/database.mysqli.inc on line 128
Warning: MySQL server has gone away query: INSERT INTO watchdog (uid, type, message, variables, severity, link, location, referer, hostname, timestamp) VALUES (1, 'php', '%message in %file on line %line.', 'a:4:{s:6:\"%error\";s:12:\"user warning\";s:8:\"%message\";s:573:\"MySQL server has gone away\nquery: INSERT INTO watchdog\n (uid, type, message, variables, severity, link, location, referer, hostname, timestamp)\n VALUES\n (1, 'update', 'Fetched information about all available new releases and updates.', 'a:0:{}', 5, '<a href=\\"/admin/reports/updates\\">показать</a>', 'http://www.mqlsoft.ru/admin/reports/updates/check?destination=admin%2Fre..., 'http://www.mqlsoft.ru/admin/reports/status', '83.239.151.47', 1242759944)\";s:5:\"%file\&qu in /home/mysite/public_html/includes/database.mysqli.inc on line 128
Warning: MySQL server has gone away query: INSERT INTO watchdog (uid, type, message, variables, severity, link, location, referer, hostname, timestamp) VALUES (1, 'php', '%message in %file on line %line.', 'a:4:{s:6:\"%error\";s:12:\"user warning\";s:8:\"%message\";s:173:\"MySQL server has gone away\nquery: SELECT dst FROM url_alias WHERE src = 'admin/reports/status' AND language IN('ru', '') ORDER BY language DESC\";s:5:\"%file\";s:44:\"/home/mysite/public_html/includes/path.inc\";s:5:\"%line\";i:69;}', 3, '', 'http://www.mqlsoft.ru/admin/reports/updates/check?destination=admin%2Fre...', 'http://www.mqlsoft.ru/admin/reports/status', '83.239.151.47', 1242759944) in /home/mysite/public_html/includes/database.mysqli.inc on line 128
Warning: MySQL server has gone away query: INSERT INTO watchdog (uid, type, message, variables, severity, link, location, referer, hostname, timestamp) VALUES (1, 'php', '%message in %file on line %line.', 'a:4:{s:6:\"%error\";s:12:\"user warning\";s:8:\"%message\";s:37273:\"MySQL server has gone away\nquery: UPDATE sessions SET uid = 1, cache = 0, hostname = '83.239.151.47', session = 'messages|a:2:{s:5:\\"error\\";a:8:{i:0;s:209:\\"user warning: MySQL server has gone away\\nquery: UPDATE variable SET value = 'b:1;' WHERE name = 'drupal_http_request_fails' in /home/mysite/public_html/includes/bootstrap.inc on line 519.\\";i:1;s:161:\\"user warning: MySQL server has gone away\\nquery: DELETE FROM cache WHERE cid = 'variables' in /home/mysite/public_html/includes/cache.inc on line 179.\\" in /home/mysite/public_html/includes/database.mysqli.inc on line 128
Warning: MySQL server has gone away query: INSERT INTO watchdog (uid, type, message, variables, severity, link, location, referer, hostname, timestamp) VALUES (1, 'php', '%message in %file on line %line.', 'a:4:{s:6:\"%error\";s:7:\"warning\";s:8:\"%message\";s:138:\"Cannot modify header information - headers already sent by (output started at /home/mysite/public_html/includes/database.mysqli.inc:128)\";s:5:\"%file\";s:46:\"/home/mysite/public_html/includes/common.inc\";s:5:\"%line\";i:328;}', 3, '', 'http://www.mqlsoft.ru/admin/reports/updates/check?destination=admin%2Fre...', 'http://www.mqlsoft.ru/admin/reports/status', '83.239.151.47', 1242759944) in /home/mysite/public_html/includes/database.mysqli.inc on line 128
Да, таблицу watchdog в MySql я проверил, восстановил и потом просто очистил (truncate table) - не помогло.
При этом запуск cron на http://www.mqlsoft.ru/admin/reports/status/run-cron заканчивается провалом с сообщением "Попытка перезапуска выполнения регулярных процедур (cron) в то время, как они уже выполняются.". Т.е. выполнение cron идёт, он зациклился что-ли?
У меня та же беда. Причем возникает не только при запуске cron, но и при входе в любой раздел админки.
Есть какое-то решение?
Тоже самое.
Просто деактивировал модуль update пока.
Но Cron тоже не хочет запускаться.
на локалхосте проверьте. скорей всего дело в настройках сервера.
А что проверять то, тут и проверять то собственно и нечего - проблема в ограничении памяти под php - нужно как минимум 96 mb. На spaceweb ограничение в 32 mb.
С ув., Алексей
www.04ki.com
www.smsmelody.ru
www.partsgroup.ru
Поднял в /home/dverispt/public_html/sites/default/settings.php
ini_set('memory_limit', '128M');
Все равно те же сообщения об ошибке.
Есть ли какие идеи?
Помогло:
Ошибка MySQL server has gone away query | Drupal в рунете http://www.drupal.ru/node/3666
такая же проблема появилась после добавления модуля виз.редактирования. вкл/выкл не помогало
сделал так :
В файле
includes/database.mysql.inc
в конце функции db_connect(), под строкой "SET NAMES" вставить:
mysql_query('SET SESSION wait_timeout = 60', $connection);
В файле
includes/database.mysqli.inc
в конце функции db_connect(), под строкой "SET NAMES" вставить:
mysqli_query($connection, 'SET SESSION wait_timeout = 60');
проблема исчерпана
Вот решение:
Ошибка MySQL server has gone away query | Drupal в рунете http://www.drupal.ru/node/3666#comment-322607
В ~/public_html/php.ini:
mysql.connect_timeout = 160
mysqli.connect_timeout = 160
mysql.reconnect = On
mysql.trace_mode = Off
Не проверял, но, кажется, сработал mysql.reconnect = On
Вот такой рецепт, без правки модулей.