Like what you see? Have a play with our trial version.

Overview


Yellowfin allows user to create scheduled reports. In some instances as the administrator you will want to delete redundant schedule items. From the admin panel you will be able to view and delete all scheduled tasks without the need to open each task individually.


To access the schedule list go to Administration > Admin Console > Schedule Management.

 

Schedule Types

There are a range of scheduled tasks that can be setup and run in Yellowfin. These include:

 

    • Broadcast - push a piece of content out to a specified set of users on a regular basis.
    • Cached Filter Refresh - update the values in report cached filters on a regular basis.
    • Cached View - update the data cached in a view on a regular basis.
    • Report - update the data in a report that has been set up to have its results cached.
    • Report Subscription - push a report to a specified user on a regular basis.
    • Access Filter - update the values in an access filter on a regular basis.
    • Third Party - update data required by third party connectors. Depending on the connector this may also involve loading and transforming data.

 

View Schedules


The schedule list allows you to search, view, edit, pause, run, and delete scheduled tasks.


 

Edit Schedule


By clicking on the name of a task, you can view its schedule details.


To edit a schedule simply click on the Edit button on the task and make the changes you require.

When finished, click the Save button to commit your changes.

 

Pause Scheduled Task


To pause a task simply open it by clicking on the name of a task and click on the Pause button.


 

Run Scheduled Task


To run a task simply open it by clicking on the name of a task and click on the Refresh button.


 

Delete Scheduled Task


From the list of scheduled items select the ones you want to delete and click the Delete button.


 

Refresh Schedules


To refresh schedules, click on the Refresh button at the bottom of the list.


 

 


Task Scheduler Management

All scheduled tasks (such as broadcast reports, scheduled transformation flows, filters, etc.)  get added to a queue that is managed by Yellowfin’s Task Scheduler. However, there is a limit to the number of items that can be added to this queue at a time to stop the system from getting overloaded with too many waiting tasks that use up memory and CPU resources. This limit can be changed from within the web.xml file.


Task Scheduler Limits

Before updating the limit, let’s learn more about how to Task Scheduler behaves:

  • The Task Scheduler wakes up every minute, and looks for tasks that need to be run.

  • If it’s the right time to run a task, it gets submitted to the queue. If there are free threads, the tasks get removed from the queue and start running.

  • When all task threads are busy, tasks stay queued until there’s a free thread to run. By default, 5 threads can run at the same time. (This thread limit can be changed through the web.xml file.)

  • If the queue is full then tasks are rejected and cannot run. In this case, a warning in sent to the log. By default the queue size is 20, but this can also be changed in web.xml.

    • This is an indication that too many tasks are trying to run at once or tasks are too slow to complete.

    • The user can increase memory and CPU on the server to allow more tasks to run by changing the configuration. (That is, adding a larger queue, and increasing the thread size.)

    • The user can change their scheduled tasks to not attempt to run so many tasks at the same time, for example, stagger them throughout the day rather than all at once on midnight.

    • The next time the task scheduler wakes up an attempt will be made to queue the task again, as tasks might be have finished freeing up resources.


Updating the Task Scheduler Limit

Follow these steps to change the Task Scheduler’s thread and queue limits:

  1. Access the Yellowfin/appserver/webapps/ROOT/WEB-INF directory.

  2. Open the web.xml file.


  3. Scroll to the section on Task Scheduler. This is what it looks like in the file.



  4. Uncomment the init-param tags from this section.

  5. You can then edit the default number of tasks that can be executed concurrently, by changing the value of the TaskSchedulerThreads parameter, and the maximum number of tasks that can be added to the queue at a time, by updating the value of the TaskSchedulerMaxThreadQueue parameter.

  6. Save the file. Your queue and thread limits will be updated accordingly.