diff options
author | Arthur Shau <arthurshau@meta.com> | 2024-03-14 20:43:13 +0100 |
---|---|---|
committer | Matteo Croce <teknoraver@meta.com> | 2024-10-11 22:54:16 +0200 |
commit | cc0ab8c81031fae2b28e66f52972473875931278 (patch) | |
tree | ef6884742e8746b175d7dd87e40cc74e24d27947 /docs/TRANSIENT-SETTINGS.md | |
parent | Merge pull request #34700 from yuwata/network-conf-parser (diff) | |
download | systemd-cc0ab8c81031fae2b28e66f52972473875931278.tar.xz systemd-cc0ab8c81031fae2b28e66f52972473875931278.zip |
timer: introduce DeferReactivation setting
By default, in instances where timers are running on a realtime schedule,
if a service takes longer to run than the interval of a timer, the
service will immediately start again when the previous invocation finishes.
This is caused by the fact that the next elapse is calculated based on
the last trigger time, which, combined with the fact that the interval
is shorter than the runtime of the service, causes that elapse to be in
the past, which in turn means the timer will trigger as soon as the
service finishes running.
This behavior can be changed by enabling the new DeferReactivation setting,
which will cause the next calendar elapse to be calculated based on when
the trigger unit enters inactivity, rather than the last trigger time.
Thus, if a timer is on an realtime interval, the trigger will always
adhere to that specified interval.
E.g. if you have a timer that runs on a minutely interval, the setting
guarantees that triggers will happen at *:*:00 times, whereas by default
this may skew depending on how long the service runs.
Co-authored-by: Matteo Croce <teknoraver@meta.com>
Diffstat (limited to 'docs/TRANSIENT-SETTINGS.md')
-rw-r--r-- | docs/TRANSIENT-SETTINGS.md | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/docs/TRANSIENT-SETTINGS.md b/docs/TRANSIENT-SETTINGS.md index 15f1cbc47c..e219131ce6 100644 --- a/docs/TRANSIENT-SETTINGS.md +++ b/docs/TRANSIENT-SETTINGS.md @@ -387,6 +387,7 @@ Most timer unit settings are available to transient units. ✓ AccuracySec= ✓ RandomizedDelaySec= ✓ FixedRandomDelay= +✓ DeferReactivation= Unit= ``` |