Красноречивый тайм-аут при сохранении - PullRequest
0 голосов
/ 05 марта 2019

У меня обнаружена ошибка, которая не позволяет моей модели сохранить (истекло время ожидания).

Я попытался отладить, создав дамп в разных местах во время сохранения, и кажется, что вызов события updating - вот где оно застревает. У меня нет никаких обработчиков событий, связанных с этим событием, но он все еще пытается запустить его и завершается неудачей.

Сбрасывая обратную трассировку где-то глубоко в коде, я вижу бесконечную цепочку toArray, relationsToArray и случайный array_map вызов. Похоже, что диспетчер или что-то пытается сериализовать модель и работает в цикле отношений.

Вот некоторые следы:

  276 => 
  array (
    'file' => '/srv/myapp/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php',
    'line' => 972,
    'function' => 'relationsToArray',
    'class' => 'Illuminate\\Database\\Eloquent\\Model',
    'type' => '->',
  ),
  277 => 
  array (
    'file' => '/srv/myapp/vendor/laravel/framework/src/Illuminate/Support/Collection.php',
    'line' => 1686,
    'function' => 'toArray',
    'class' => 'Illuminate\\Database\\Eloquent\\Model',
    'type' => '->',
  ),
  278 => 
  array (
    'function' => 'Illuminate\\Support\\{closure}',
    'class' => 'Illuminate\\Support\\Collection',
    'type' => '->',
  ),
  279 => 
  array (
    'file' => '/srv/myapp/vendor/laravel/framework/src/Illuminate/Support/Collection.php',
    'line' => 1687,
    'function' => 'array_map',
  ),
  280 => 
  array (
    'file' => '/srv/myapp/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Concerns/HasAttributes.php',
    'line' => 241,
    'function' => 'toArray',
    'class' => 'Illuminate\\Support\\Collection',
    'type' => '->',
  ),
  281 => 
  array (
    'file' => '/srv/myapp/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php',
    'line' => 972,
    'function' => 'relationsToArray',
    'class' => 'Illuminate\\Database\\Eloquent\\Model',
    'type' => '->',
  ),

К сожалению, я не могу отследить, какие отношения вызывают это, чтобы попытаться это исправить. Как мне отладить и исправить это?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...