DATABASE `{$dbName}`");
В итоге запрос на клиенте висит 100сек (таймут БД), потом ловлю исключение:
PDOException
SQLSTATE[HY000]: General error: 2006 MySQL server has gone away
При этом фактически база удаляется.
В логах по стактрейсу последняя выполненная строчка
#0 /sites/***/vendor/laravel/framework/src/Illuminate/Database/Concerns/ManagesTransactions.php(279): PDO->rollBack()
Как я понял, транзакция почему-то считается провальной, после чего падает на откате.
Подскажите, куда покопать?
Абсолютно никто: не удаляет всю базу данных Фёдор: DROP DATABESE
Не совсем понял сути прикола. Базу удаляю не основную, а стороннюю, в которой хранятся левые данные
Может попробуешь не через доктрину
через mysqli удаляется спокойно, но мне не ясно, почему через DB не хочет без ошибок. Можешь в двух словах пояснить, в чем затуп?
Я могу предположить что такого сценария работы нет,как не странно лол,посмотри проще в библиотеке, чё он дальше должен делать)
потому что timeout вышел, или памяти незхватило, 128 мегабайт, выделяемой php
Может он в рекурсию ушёл?
в том и дело, что база на 20кб и простой DROP не может в нормальном режиме выжирать всю память
Говорю, посмотри в дебаге чё творится
Там нет другой функции после конекта,чтобы просто выполнить голый код ?
Ок, спасибо, буду ковырять. Думал, что в чём-то очевидном туплю
по факту упал pdo, нужно смотреть почему он упал, тут дело даже не в ORM
Привет! А разве можно откатить транзакцию и вернуть БД при DROP DATABASE? Попробуй удалить базу без транзакции
Обсуждают сегодня