Some Sidekiq cron workers are NOT cron workers
Problem
Discovered during the slack discussion https://gitlab.slack.com/archives/CMMF8TKR9/p1613544210193100?thread_ts=1613439968.156800&cid=CMMF8TKR9
It seems some of the Sidekiq cron workers are NOT actually cron workers. For example,
Releases::CreateEvidenceWorker
UpdateAllMirrorsWorker
These workers include CronjobQueue
module, which lets Sidekiq run the job in cronjob
queue, however, these workers do NOT have a schedule (e.g. 0 * * * *
) and directly executed from the application. e.g.
::Releases::CreateEvidenceWorker.perform_async(release.id, pipeline&.id)
This messes up the heatmap of the cron schedule (Thanks to @qmnguyen0711), which is very useful to find the less-busy time slot when you add a new Sidekiq cron job.
Proposal
We should use the default
queue for these workers or create a new queue.
Edited by Shinya Maeda