What do the job statuses mean in practice?
Could someone please explain what the various job status mean in practice? E.g. pending, queued, delayed?
What is delayed digest job?
What is a pending digest job?
What is a pending in-app job? Sent but unread?
What is a pending trigger?
Is there any documentation I could read about this?
8 Replies
@Engineering could you please help us here?
pending digest - actively aggregating messages into one message
pending in-app job - in the process of sending specifically an in-app notification
pending trigger - trigger request was recevied and is awaiting fan-out through topics or getting a set of subscribers
Thanks @Zac Clifton. So if I have a lot of pending jobs, how can I speed this up? Adding more workers?
If your self-hosting, then yes.
the workers do all of the processing in the trigger flow.
I would also make sure you have AUTO_CREATE_INDEXES=true on all apps that touch the database
@Zac Clifton no matter how much resource I put into it, I just end up with tons of pending jobs. I get why if I'm triggering faster than I can process I build up a backlog, but it's running into millions of pending jobs and a tiny few actually get delivered. I've got like millions of in-app pending tasks.
It seems like the trouble is topics with lots of subscribers and a 1 day digest just spends all its time digesting and not delivering
Is there a way to run workers that just look for certain statuses? E.g. have a worker processing triggers and one processing pending jobs?
For posterity: ended up deleting a bunch of old jobs that were stuck. Since upgrading to 0.21, haven't yet seen the same problem
I am not sure why that way happening. The way the worker works is that they round robin over every topic which is inefficient, this is most likely way it seemed like it was not helping.
Also now seeing a lot of 'skipped' and a few 'delayed'. What is a skipped or delayed digest?