Итак, вот мое текущее решение.Я сделал копию lib / Varien / Db / Adapter / Pdo / Mysql.php и создал новый файл app / code / local / Varien / Db / Adapter / Pdo / Mysql.php.
Я изменилфункция запроса как таковая.
изменить:
$result = parent::query($sql, $bind);
на:
$tries = 0;
do {
$retry = false;
try {
$result = parent::query($sql, $bind);
} catch (Exception $e) {
// Check to reconnect
if($tries < 3 && stristr($e->getMessage(), '2006 MySQL server has gone away')) {
$retry = true;
$tries++;
$this->_connection = null; // Kill the current connection to the scaled out db
$this->_connect(); // Reconnect to an available db
} else {
throw $e;
}
}
} while ($retry);