0 9 * * 1-5 means 09:00 Monday–Friday in a crontab. Paste it into Databricks (Quartz) or AWS EventBridge and it is either rejected or runs on the wrong days. A quick demo with the free DevToolBox Cron Converter:
| From (Unix) | To | Result | Outcome |
|---|---|---|---|
0 9 * * 1-5 |
Quartz | 0 0 9 ? * 2-6 |
conditional (same timezone) |
0 9 * * 1-5 |
EventBridge | cron(0 9 ? * 2-6 *) |
conditional (rules run in UTC) |
0 9 1 * 1 |
Quartz | — | unsupported: Unix runs on the 1st or Mondays; Quartz needs ? in one day field |
rate(15 minutes) |
Unix | — | not converted: interval schedule; */15 * * * * suggested as a different, clock-aligned schedule |
What the converter handles: the seconds field, ?, Sunday 0 vs 1, L/W/#, the year field, and the cronie rule that the OR only applies when neither day field starts with *. Every result is labelled exact, conditional or unsupported, and the next runs of source and target are compared side by side (a diagnostic, not a proof).
DST, per scheduler
Pick a timezone and a reference date (say 7 March 2026 in America/New_York) and the run list marks runs in the skipped or repeated hour with what each scheduler documents:
- EventBridge Scheduler (AWS docs): skipped-hour runs are skipped; repeated-hour runs happen once.
- cronie (man page): a fixed-time job in the skipped hour runs right after the change and is not run twice in the repeated hour.
- EventBridge scheduled rules: UTC only, nothing skipped or repeated.
- Quartz: not documented in the CronTrigger tutorial — the tool says so.
Single-expression validators: Quartz · EventBridge. Full checklist: Migrating cron schedules to Databricks (Quartz) and EventBridge without surprises.
Top comments (0)