Be part of JetBrains PHPverse 2026 on June 9 – a free online event bringing PHP devs worldwide together.

Atef95's avatar

Laravel jobs table don't get populated in production

Hey guys

I'm deploying my app in production but I have issues with queues

they work properly in local

whenever I dispatch a job , it fires correctly and I get an email but jobs table always empty

I'm using supervisor to keep running the queue

this is my laravel-worker.conf

[program:email-queue]
process_name=%(program_name)s_%(process_num)02d
command=php /var/www/html/control-panel/artisan queue:work
autostart=true
autorestart=true
user=root
numprocs=2
redirect_stderr=true
stdout_logfile=/var/www/html/control-panel/storage/logs/emails.log

when I run supervisorctl status

I get :

email-queue:email-queue_00       RUNNING   pid 17220, uptime 0:07:43
email-queue:email-queue_01       RUNNING   pid 17213, uptime 0:07:45


I tried restarting all the workers by running

php artisan queue:restart

and no way...

is it an issue related to supervisor ??

0 likes
2 replies
mix5003's avatar
mix5003
Best Answer
Level 46

jobs table will use only when QUEUE_DRIVER = database. if you set QUEUE_DRIVER to other it not insert anything to jobs table

and if you set QUEUE_DRIVER = database, it will insert job data when you dispatch it. but it will remove when job is completed or failed.

so in conclusion jobs table contain only jobs that left on queue. and if it always empty it mean no jobs left to process. it has no problem at all

4 likes

Please or to participate in this conversation.