Rundeck DST handling
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Newbie friendliness
- 45/100
- Issue type
- Documentation
- Clarity
- Mostly clear
- Activity status
- Active
- Tech stack
- java
- Domain
- documentation
Research direction
The claims concern how Rundeck's Quartz cron triggers handle DST, and the source page is the job-creation section of the manual linked in the issue (creating-jobs.html). Start by reading that section, then set up a job in a DST-observing timezone and check what happens at the spring-forward and fall-back transitions. Done means each claim is confirmed or corrected with observed results, and the documentation gets a short DST best-practices note.
Written by the indexing model from the issue text.
Description
Rundeck Version
5.17
Describe the issue
We dont have current information related to the DTS handling on scheduled jobs. Forrest shared the following input on this:
Rundeck schedules jobs with Quartz cron triggers. Each fire time is worked out from wall-clock time in the job’s timezone. That’s the timezone set on the job’s schedule, or the server’s JVM timezone if the job doesn’t set one.
- Spring-forward (02:00 jumps to 03:00)
A job set for a time inside the skipped hour, such as 02:30, doesn’t run at 02:30 that day because that time never happens.
Quartz uses lenient Java calendar math, so the time normally shifts forward and the job runs once, shortly after the change (e.g. at 03:30). It isn’t silently dropped. This is the case I’d most want confirmed with a quick test before quoting it to the customer.
This isn’t a misfire. Misfire rules only apply when the scheduler was down or had no free threads at the fire time.
Jobs that repeat often (every 15 minutes, every hour) simply have no runs during the missing hour.
2. Fall-back (03:00 goes back to 02:00)
A once-a-day job at 02:30 runs once, on the first 02:30. After it fires, Quartz looks for the next match after that moment and lands on the next day, not the second 02:30.
Jobs that repeat often, like 0 */15 * * * ? or hourly, follow the wall clock, so they can run twice during the repeated hour.
Other questions
Version dependence: This has been stable across Rundeck/RBA versions because the Quartz scheduling logic hasn’t changed in this area. No known version-specific differences.
Configuration that changes the behavior:
The job’s timezone is the main control. Setting a job to UTC, or any zone without DST, removes the problem completely.
The server JVM timezone (-Duser.timezone) is used for any job that doesn’t set its own.
Misfire settings don’t change DST handling.
Best practices:
Avoid scheduling jobs between roughly 01:00 and 03:00 local time in zones that observe DST.
Or set those jobs’ schedule timezone to UTC.
Make jobs safe to run twice if they repeat often across the fall-back hour.
Turn off “allow multiple executions” if a duplicate run would cause problems.
Timezone-specific considerations:
The logic is the same in every zone. What differs is when each zone changes and by how much: US and EU switch on different dates, the southern hemisphere switches in the opposite direction, and Lord Howe Island shifts by only 30 minutes.
Rundeck relies on the JVM’s timezone database, so keeping Java up to date matters when a country changes its DST rules.
Source page
https://docs.rundeck.com/docs/manual/jobs/creating-jobs.html#creating-a-job
- Dominant language
- JavaScript
- Stars
- 93
- Forks
- 177
- Avg merge
- 2d 8h
- Merged PRs (30d)
- 28
Getting set up
This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from rundeck/docs
-
Dependency DashboardOpen
Difficulty 5/5 Over a week Newbie friendliness 15/100
Maintainers usually reply within 1 day
Similar issues
-
Clinic sharing: fast sync refusal message suggests Delete Data, which only developer builds haveOpenbug
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
avniproject/avni-client#2228 ·
-
bug confirmed issue
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
open-webui/open-webui#33196 · 2 comments ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
fable-compiler/Fable#5157 ·
Maintainers usually reply within 1 day
-
New tool: PaperBananaPossibly taken @github-actions claimed this today. Opensubmission triage
Difficulty 1/5 Under an hour Newbie friendliness 75/100
kausalflow/tools#243 · 1 comment ·
Maintainers usually reply within 1 day
-
area: apple-music area: build-release bug effort: small priority: high
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
ChristianTabor/Argon#32 ·
Maintainers usually reply within 1 day