laravel / horizon

Dashboard and code-driven configuration for Laravel queues.
https://laravel.com/docs/horizon
MIT License
3.88k stars 658 forks source link

Horizon intermittently returning unix timestamp for "runtime" column #1510

Open sts-ryan-holton opened 1 month ago

sts-ryan-holton commented 1 month ago

Horizon Version

5.29.1

Laravel Version

11.28.1

PHP Version

8.3.8

Redis Driver

PhpRedis

Redis Version

6.0.2

Database Driver & Version

MySQL 8.3.8

Description

The runtime column reported in the Horizon dashboard when monitoring jobs is intermittently wrong and appearing to return a unix timestamp with the number of seconds since 1970 instead of the runtime of the job, see screenshot.

horizon_runtime_wrong

Steps To Reproduce

My applications queue has a timeout of 620 seconds, retry after is set to 700.

Taking a look at a job that finished via my project, one that reports as a unix timestamp instead of the job duration, it should've been around 402 seconds for it to complete

crynobone commented 1 month ago

This seems to be caused when the job stored in Horizon doesn't contain the reserved information. Will need to understand why this would occur if all queues are handled by Horizon. If anyone has additional reports feel free to add additional information here.

crynobone commented 3 weeks ago

Hey there, thanks for reporting this issue.

We'll need more info and/or code to debug this further. Can you please create a repository with the command below, commit the code that reproduces the issue as one separate commit on the main/master branch and share the repository here?

Please make sure that you have the latest version of the Laravel installer in order to run this command. Please also make sure you have both Git & the GitHub CLI tool properly set up.

laravel new bug-report --github="--public"

Do not amend and create a separate commit with your custom changes. After you've posted the repository, we'll try to reproduce the issue.

Thanks!