Added
NeverSchedule
returns aPeriodicSchedule
that never runs. This can be used to effectively disable the reindexer or any other maintenance service. PR #718.- Add
SkipUnknownJobCheck
client config option to skip job arg worker validation. PR #731.
Changed
-
The reindexer maintenance process has been enabled. As of now, it will reindex only the
river_job_args_index
andriver_jobs_metadata_index
GIN
indexes, which are more prone to bloat than b-tree indexes. By default it runs daily at midnight UTC, but can be customized on theriver.Config
type viaReindexerSchedule
. Most installations will benefit from this process, but it can be disabled altogether usingNeverSchedule
. PR #718. -
Periodic jobs now have a
"periodic": true
attribute set in their metadata to make them more easily distinguishable from other types of jobs. PR #728. -
Snoozing a job now causes its
attempt
to be decremented, whereas previously themax_attempts
would be incremented. In either case, this avoids allowing a snooze to exhaust a job's retries; however the new behavior also avoids potential issues with wrapping themax_attempts
value, and makes it simpler to implement aRetryPolicy
based on eitherattempt
ormax_attempts
. The number of snoozes is also tracked in the job's metadata assnoozes
for debugging purposes.The implementation of the builtin
RetryPolicy
implementations is not changed, so this change should not cause any user-facing breakage unless you're relying onattempt - len(errors)
for some reason. PR #730. -
ByPeriod
uniqueness is now based off a job'sScheduledAt
instead of the current time if it has a value. PR #734.