Skip to content

[13.x] Fix queue:retry with non-scalar failed job ids - #62208

Merged
taylorotwell merged 1 commit into
laravel:13.xfrom
GromNaN:fix/failed-job-ids
Oct 27, 2026
Merged

taylorotwell merged 1 commit into
laravel:13.xfrom
GromNaN:fix/failed-job-ids

Conversation

@GromNaN

@GromNaN GromNaN commented Oct 27, 2026 •

Copy link
Copy Markdown
Contributor

DatabaseFailedJobProvider::ids() returns the raw id values from the table. When they are not scalar, such as MongoDB ObjectId instances, queue:retry all throws a TypeError in RetryCommand, because it uses each id as an array key.

$found = new Collection([$id => $found]);

This casts non-integer ids to strings in ids(). Integer ids are kept as is, so existing drivers behave the same. The FailedJobProviderInterface and the other providers now document the scalar ids.

Fixes mongodb/laravel-mongodb#3626

@github-actions

Copy link
Copy Markdown

Thanks for submitting a PR!

Note that draft PRs are not reviewed. If you would like a review, please mark your pull request as ready for review in the GitHub user interface.

Pull requests that are abandoned in draft may be closed due to inactivity.

@GromNaN
GromNaN marked this pull request as ready for review October 27, 2026 12:17
@taylorotwell
taylorotwell merged commit 2ff984f into laravel:13.x Oct 27, 2026
64 checks passed
@GromNaN
GromNaN deleted the fix/failed-job-ids branch October 27, 2026 14:25
@GromNaN GromNaN changed the title Fix queue:retry with non-scalar failed job ids [13.x] Fix queue:retry with non-scalar failed job ids Oct 27, 2026
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.

[PHPLARA-311] queue:retry all throws TypeError with the documented failed-job config on 5.x (ids() returns ObjectId)

2 participants