エラーメッセージ
General error: 1364 Field 'uuid' doesn't have a default value (SQL: insert into `failed_jobs` (`connection`, `queue`, `payload`, `exception`, `failed_at`) values (database, default, {"uuid":"6c370f45-895f-4b6b-99dd-53443ddcfc61",...
原因
Laravelでジョブ失敗テーブルを作成し、わざと例外を発生させジョブを失敗させたところ該当のエラーが出現した。
原因としてはconfig/queue.php
の'failed'
、driver
にdatabase-uuids
設定されていなかったため。
日本語公式にも説明がなかったため注意が必要。
.php
/*
|--------------------------------------------------------------------------
| Failed Queue Jobs
|--------------------------------------------------------------------------
|
| These options configure the behavior of failed queue job logging so you
| can control which database and table are used to store the jobs that
| have failed. You may change them to any database / table you wish.
|
*/
'failed' => [
'driver' => env('QUEUE_FAILED_DRIVER', 'database-uuids'), //これ
'database' => env('DB_CONNECTION', 'mysql'),
'table' => 'failed_jobs',
],
参考