pelican-dev / panel

https://pelican.dev
GNU Affero General Public License v3.0
819 stars 83 forks source link

Schedules running at 2 different times. #605

Open BrianDLC opened 3 days ago

BrianDLC commented 3 days ago

Current Behavior

Schedules seem to run twice at two different times, today I was able to notice all schedules run at other times, I had set up an alarm to run every 3 hours, another to run at 0 0 and another to run at /3, which would be every 3 hours, all 3 ran at the same time at 0 UTC. The 0 0 * schedule ran at 4PM and again at 8PM (it should run at 8PM), after it ran again at 8PM, it claims the next scheduled run time is at 4PM, meaning it'll most likely run at 4PM and 8PM again the next day. I did have this issue a month ago and had more information but decided to turn off all schedules due to wanting to progress on a game server.

The issue persists, If I run a schedule it will run at the time I designated and at another time around 4 hours before the scheduled time. I do not understand how to troubleshoot this and would love some assistance.

I've even tried updating the panel as well as setting the schedule on another server and node, still same issue, seems to have started happening after some time using the panel as it did work for a time.

Expected Behavior

Schedules should run as intended by the cron schedule

Steps to Reproduce

Create any schedule and see when it runs.

Panel Version

1.0.0-beta10

Wings Version

1.0.0-beta4

Games and/or Eggs Affected

All (Testing on Minecraft Neoforge)

Docker Image

No response

Error Logs

https://paste.pelistuff.com/anwT panel
https://paste.pelistuff.com/tjbX wing 1
https://paste.pelistuff.com/3BFF wing 2

Is there an existing issue for this?

Boy132 commented 3 days ago

Make sure your contab and queue worker are setup correctly. Also make sure that there aren't multiple queue workers running. The queue worker was previously called pelicanq or just pelican, it should now be called pelican-queue.

Also note that the schedule cron time (e.g. 0 0 * * *) is always displayed as UTC while Next run and Last run are displayed in your timezone. Just mentioning it to make sure there are no confusions.

BrianDLC commented 3 days ago

Hey, looks like I only have one queue worker and my crontab config matches what the instructions ask for

admin@vmname:/var/www/pelican$ ps aux | grep 'queue:work'

www-data 1401230  3.2  0.1 264048 98544 ?        Ss   Oct02  32:08 /usr/bin/php /var/www/pelican/artisan queue:work --tries=3

apocadm+ 1493898  0.0  0.0   6620  2216 pts/0    S+   12:39   0:00 grep --color=auto queue:work

image

Yes I am aware about the displayed time, they have helped me see the issue. When I have a job set to run at 0 UTC, it runs at 4PM EST and again at 8PM EST, I can see its going to run again because it lets me know it plans to run at 8PM once the 4PM job is done.

I have one job I disabled that shows an example of that below image

As you can see, it just ran at 9AM, and its planning to run again at 5AM.

Boy132 commented 3 days ago

Did you change the APP_TIMEZONE in your database? It should be set to UTC.

BrianDLC commented 3 days ago

No as I have not made any additional changes to the config outside of the panel GUI, as in, after setting up the panel/nodes after following the guide on the pelican panel docs I made no other changes to them.