Skip to content

[13.x] Don't fail database queue jobs on concurrency errors while reserving - #62145

Merged
taylorotwell merged 1 commit into
laravel:13.xfrom
xurshudyan:database-queue-concurrency-errors
Oct 22, 2026
Merged

taylorotwell merged 1 commit into
laravel:13.xfrom
xurshudyan:database-queue-concurrency-errors

Conversation

@xurshudyan

Copy link
Copy Markdown
Contributor

#58978 started failing jobs when reserving them throws, but that also catches temporary errors like SQLite's "database is locked" or deadlocks. The job gets deleted and marked as failed without ever running.

This only fails the job when the exception isn't a concurrency error. Otherwise the transaction rolls back and the worker picks the job up again on the next poll.

laravel-workflow is currently swapping out the database queue connector to work around this.

@taylorotwell
taylorotwell merged commit 3c91eca into laravel:13.x Oct 22, 2026
64 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants