У меня много транзакций в моем коде, и если возникает ошибка при выполнении одной из этих транзакций, которая не вызывает фиксацию или откат, тогда база данных заблокирована, и любые последующие попытки доступа к базе данных приводят к этому
production.ERROR: PDOException: SQLSTATE[HY000]: General error: 1205 Lock wait timeout exceeded; try restarting transaction in /home/forge/default/vendor/laravel/framework/src/Illuminate/Database/Connection.php:390
В контроллере:
DB::beginTransaction();
try {
//Code that uses exec() to process some images. <-- If code breaks here, then the above error appears on subsequent requests.
//Code that accesses the database
}
catch(\Exception $e){
DB::rollback();
throw $e;
}
DB::commit();
Таким образом, даже миграция php-artisan: refresh или php artisan migrate: reset перестает работать. Как мне это исправить?