If you're here, it's a good idea to have read the following first, then ask the question, "am I trying to solve an issue?", if this is the case reach out to the support team to ensure we're addressing the right issues.
What is the Yellowfin Task Scheduler?
This is the process which runs background tasks. These can be broadcasts, cached filters, cached reports, signals.
Anything that is scheduled to run automatically is a background task, that is controlled by the scheduler.
How does it work?
The scheduler polls the TaskSchedule table every 30secs to see what needs to run.
If it is scheduled for that time, then it gets added to the queue to run.
By default Yellowfin will run 5 background tasks at once, and has a waiting queue size of 20. So if you already have 5 tasks running, the 6th will go into the queue until one of the 5 tasks have completed.
These queue sizes can be configured, please see the following article for more information.
How can I map out schedules from the Yellowfin DB?
There is a single table that contain all the information needed for schedules to run. There are some other tables which are used as reference in regards to the content itself, though we're focusing on the schedules itself.
The following columns are the ones that are mostly used, and can be configured via the UI.
IpOrg | This shows which client org the task was created under (this OrgID references the Organization table) |
ScheduleSubjectCode | Will match the type of task. E.g 'BROADCAST', (Broadcasts), 'MIREPORT' (Cached reports) |
ScheduleUnitID | This is used to link with the relevant table, e.g BroadcastID for Broadcast, ReportID for Cached reports |
ScheduleIsOn | 1=On, 0 = Off |
FrequenceyTypeCode | Exactly what you think it is, MINUTES, WEEKLY etc.. |
FrequencyUnit | This is an integer and ties in with code above. If code is WEEKLY, it matches day number (e.g. 0=Sunday, 3=Weds, 6=Sat), if it's MINUTES, then it's between how many minutes does it run (e.g. 15 would mean run every 15 minutes). |
ScheculedLocalRunTime | How many seconds after midnight (GMT) it is scheduled to run. For example, 39600 is 11hrs. So 11 hours after Midnight (GMT) is 11am local, |
LastRunGMTDateTime | Shows when the schedule ran (GMT), in format YYYYMMDDHHMMSS. For example 20200715044045 is 2020 07 15 04:40:45 |
LastRunTime | Shows how many seconds after midnight (GMT) it actually ran. For example 16845 is 4hrs 40mins and 45secs. (04:40:45) |
If you have any questions, or running into issues relating to schedules, please raise a ticket with our support team.
Regards,
The Yellowfin Support Team.