aboutsummaryrefslogtreecommitdiffstats
path: root/teal-src
diff options
context:
space:
mode:
authorKim Alvefur <zash@zash.se>2022-01-15 09:09:24 +0100
committerKim Alvefur <zash@zash.se>2022-01-15 09:09:24 +0100
commite0e180aa9d9cac1e427ac23be49aca0c4059f755 (patch)
tree39a502fddbd20104aa7b40707b0791e0d45894c7 /teal-src
parent9767804146df64fc0ce91896994616ff910fa8ee (diff)
downloadprosody-e0e180aa9d9cac1e427ac23be49aca0c4059f755.tar.gz
prosody-e0e180aa9d9cac1e427ac23be49aca0c4059f755.zip
mod_cron: Allow for a small amount of timer drift
If the timer activates a bit early then a task might be just a few seconds short of being allowed to run. This would run such a task rather than wait another hour. The value 0.5% chosen so that a weekly task does not run an entire hour earlier than last time.
Diffstat (limited to 'teal-src')
-rw-r--r--teal-src/plugins/mod_cron.tl2
1 files changed, 1 insertions, 1 deletions
diff --git a/teal-src/plugins/mod_cron.tl b/teal-src/plugins/mod_cron.tl
index 581c8c0a..1375a195 100644
--- a/teal-src/plugins/mod_cron.tl
+++ b/teal-src/plugins/mod_cron.tl
@@ -78,7 +78,7 @@ function module.add_host(host_module : moduleapi)
end
local function should_run(when : frequency, last : integer) : boolean
- return not last or last + periods[when] <= os.time();
+ return not last or last + periods[when]*0.995 <= os.time();
end
local function run_task(task : task_spec)