Skip to content
Missed Job Handling
step 1/5

Reading — step 1 of 5

Read

~1 min readProduction Concerns

Missed Job Handling

What happens when the scheduler is down for an hour and 4 different jobs should have fired during that window?

Two strategies:

Skip (the default for cron): only fire the most recent missed instance, or none at all. Avoids cascade overload after recovery.

Catchup: fire each missed instance in sequence. Used when each instance must run (billing aggregation, log rotation). Bound the catchup window so a year of downtime doesn't trigger a year of jobs.

Kubernetes CronJob exposes this via startingDeadlineSeconds: if a job is missed by more than this duration, skip it. AWS EventBridge does the same.

Trade-offs:

  • Skip is safe but loses work
  • Catchup preserves work but can spike load
  • Catchup with limit balances both — fire up to N missed instances

Discussion

Ask a question, share an insight, or help someone who’s stuck.

Sign in to post a comment or reply.

Loading…