Прислали на оценку по стоимости просьбу исправить глюк с системой. В логах такой мат: Почитал про эту ошибку, узнал, что она возникает, если на выполнение запроса ушло больше 60 секунд. Я так понимаю, start transaction сохраняет где-то текущее состояние БД, и у чуваков просто слишком большая база стала для этой команды. Тут возникает проблема - убрать транзакции не могу, они в коде платной CMS (UMI), и если модифицировать её жуткий код, пропадёт тех. поддержка.... Какие пути решения могут быть?
Возможно, на момент попытки выполнить "start transaction" соединение закрыто. Надо сначала это проверить. Затем рекомендую убедиться в том, что ошибка происходит именно тогда, когда выполняется этот sql-запрос. А сколько времени выполняется скрипт? Быть может скрипт открывает соединение, затем в течении длительного времени что-то делает, а уже после этого пытается выполнить sql-запрос? Если "что-то делает" слишком долго, то соединение за это время может быть закрыто по таймауту.