lavary/crunz

Does this library support catch-up like anacron/fcron?

Bilge opened this issue · 5 comments

Bilge commented

Description
If a system is restarted or otherwise down for some amount of time, jobs can be missed. Systems like anacron and fcron support "catching-up" for jobs that were missed. Does this library implement any kind of catch-up mechanism?

This library runs via cronjob, so "catching up" would just be a "this cronjob should have run by now so let it run" thing which is possible with this library.

This will be nice addition but currently there is no "catch-up" mechanism.

Bilge commented

It seems the actual triggering mechanism is not even implemented in this library, but in dragonmantank/cron-expression, which makes the faulty assumption that the script can be reliably triggered every minute. I say faulty because it seems erroneous to assume not a single minute will be missed given factors like DST, clock jitter and server restarts, especially if it triggers around the 0 second mark instead of in the middle of the minute at around 30 seconds -- something which the library appears to make no effort to control.

Given that this is the case, we would either need to convince the upstream library to make amends to accommodate these improvements, or forgo it altogether and provide a more sophisticated triggering mechanism directly.

Actually Crunz doesn't run like server/daemon, Cron trigger Crunz every minute and that's all, if Cron have delays Crunz will also have delays.

Bilge commented

Yeah, that's... my point.