2014-02-05 1 views
3

Мой инструмент мониторинга, Zenoss, сообщает о событии «ПОСЛЕДНИЕ ДЕТЕКТИРОВАННЫЕ DEADLOCK» от двигателя MySQL Innodb. Когда я бегу «показать двигатель состояние InnoDB \ G» Я получаю следующую информацию о тупике:MySQL Innodb Deadlock - как удалить старое событие?

------------------------ 
LATEST DETECTED DEADLOCK 
------------------------ 
130819 14:01:12 
*** (1) TRANSACTION: 
TRANSACTION 0 108626388, ACTIVE 0 sec, process no 8726, OS thread id 47220783470912 
starting index read 
mysql tables in use 1, locked 1 
LOCK WAIT 4 lock struct(s), heap size 1216, 2 row lock(s), undo log entries 1 
MySQL thread id 4283, query id 21974219 10.92.210.108 ddrsrbe Updating 
update ddrsproduction.requests set request_priority_grade_id=3, costs=0, data_version=1, date_completed='2013-08-19 13:59:39', date_end='2013-05-24 23:59:00', date_required_by='2013-08-26 13:57:31', date_start='2013-05-19 00:01:00', date_submitted='2013-08-19 13:57:31', designated_authority_id=84528, is_manual=1, missed_sla_reason=null, missed_sla_reason_ask_user=null, product_id=35, request_cost_status_id=0, request_delivery_method_id=0, request_legislation_id=0, request_method_id=0, request_reason_id=1, request_result_status_id=null, origin_id=0, request_status_id=2, request_type_id=1, result_row_count=2, results_last_downloaded=null, site_processed='KNOW', time_zone=null, urn='LBP/281/35/12 (CONS)', user_id=2357, vf_rep_id=8 where request_id=132536 
*** (1) WAITING FOR THIS LOCK TO BE GRANTED: 

Вы можете видеть, что тупик в августе прошлого года, и я не могу убить нить как это уже не существует:

mysql> kill 4283; 
ERROR 1094 (HY000): Unknown thread id: 4283 

Я получаю скучно получать это событие для Zenoss, и очень хотелось бы, чтобы очистить InnoDB двигатель этой тревоги. У меня Googled высокий и низкий для ответа и придумали zilch, nada, ничего. Любая помощь очень ценится :-)

+1

Вы пробовали 'kill query 21974219'? –

+0

mysql> kill query 21974219; ERROR 1094 (HY000): Неизвестный идентификатор потока: 21974219 :( – machinist

+0

И другой идентификатор 47220783470912 –

ответ

4

У нас нет способа снять LATEST DETECTED DEADLOCK раздел в SHOW ENGINE INNODB STATUS. Запрос уже был убит детектором тупика, поэтому вы ничего не можете KILL. Единственный способ сбросить эту информацию - перезагрузить сервер.

Отсутствие должным образом написанного программного обеспечения должно постоянно предупреждаться из-за наличия чего-либо в этом выходе.

+0

Большое спасибо Джереми, это умилостило мою душу :) – machinist

1

Сделайте SHOW FULL PROCESSLIST, чтобы получить список всех подключений и убить соединение, выполняющее обновление, или все неактивные/спящие сессии с помощью команды Kill, если обновление не появляется.

+0

Спасибо за это @ cedric-simon. Самый верхний идентификатор в результирующем списке для пользователя _system user_ с командой _C onnect_ и значение времени _14690265_! Состояние говорит ** Ожидание, что мастер отправит событие **. Это нормально? – machinist

+0

Похож на статус репликации. Используете ли вы репликацию? http://dev.mysql.com/doc/refman/5.0/ru/replication-administration-status.html –

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

  • Нет связанных вопросов^_^