midarr-server
midarr-server copied to clipboard
build(deps): bump oban from 2.17.12 to 2.18.2
Bumps oban from 2.17.12 to 2.18.2.
Release notes
Sourced from oban's releases.
v2.18.2
Bug Fixes
[Repo] Prevent debug noise by ensuring default opts for standard transactions.
Without default opts each transaction is logged. Many standard operations execute each second, which makes for noisy logs. Now transaction opts are passed as a third argument to ensure defaults are applied.
[Repo] Increase transaction retry delay and increase with each attempt.
Bump the base transaction retry from 100ms to 500ms, and increase linearly between each successive attempt to provide deeper backoff. This alleviates pressure on smaller connection pools and gives more time to recover from contentions failures.
v2.18.1
Enhancements
[Repo] Automatically retry all transactions with backoff.
Avoid both expected an unexpected database errors by automatically retrying transactions. Some operations, such as serialization and lock not available errors, are likely to occur during standard use depending on how a database is configured. Other errors happen infrequently due to pool contention or flickering connections, and those should also be retried for increased safety.
This change is applied to
Oban.Repo.transaction/3
itself, so it will apply to every location that uses transactions.[Migration] Declare
tags
as an array oftext
rather thanvarchar
.We don't provide a limit on the size of tags and they could conceivably be larger than 256 characters. Externally the types are interchangeable, but internally there are minor advantages to using the text type.
There isn't a new migration; this change is only for new tables.
Bug Fixes
- [Repo] Correctly dispatch
query!/4
toquery!
rather thanquery
without a bang.v2.18.0
🔠Queue Shutdown Telemetry
A new queue shutdown event,
[:oban, :queue, :shutdown]
, is emitted by each queue when it terminates. The event originates from thewatchman
process, which tracks the total ellapsed time from when termination starts to when all jobs complete or the allotted period is exhausted.Any jobs that take longer than the
:shutdown_grace_period
(by default 15 seconds) are brutally killed and left as orphans. The ids of jobs left in an executing state are listed in the event'sorphaned
meta.This also adds
queue:shutdown
logging to the default logger. Only queues that shutdown with orphaned jobs are logged, which makes it easier to detect orphaned jobs and which jobs were affected:[ message: "jobs were orphaned because they didn't finish executing in the allotted time", queue: "alpha", source: "oban", event: "queue:shutdown", ellapsed: 500, orphaned: [101, 102, 103] ]
... (truncated)
Changelog
Sourced from oban's changelog.
v2.18.2 — 2024-08-16
[Repo] Prevent debug noise by ensuring default opts for standard transactions.
Without default opts each transaction is logged. Many standard operations execute each second, which makes for noisy logs. Now transaction opts are passed as a third argument to ensure defaults are applied.
[Repo] Increase transaction retry delay and increase with each attempt.
Bump the base transaction retry from 100ms to 500ms, and increase linearly between each successive attempt to provide deeper backoff. This alleviates pressure on smaller connection pools and gives more time to recover from contentions failures.
v2.18.1 — 2024-08-15
Enhancements
[Repo] Automatically retry all transactions with backoff.
Avoid both expected an unexpected database errors by automatically retrying transactions. Some operations, such as serialization and lock not available errors, are likely to occur during standard use depending on how a database is configured. Other errors happen infrequently due to pool contention or flickering connections, and those should also be retried for increased safety.
This change is applied to
Oban.Repo.transaction/3
itself, so it will apply to every location that uses transactions.[Migration] Declare
tags
as an array oftext
rather thanvarchar
.We don't provide a limit on the size of tags and they could conceivably be larger than 256 characters. Externally the types are interchangeable, but internally there are minor advantages to using the text type.
There isn't a new migration; this change is only for new tables.
Bug Fixes
- [Repo] Correctly dispatch
query!/4
toquery!
rather thanquery
without a bang.v2.18.0 — 2024-07-26
Enhancements
[Job] Support simple
unique: true
andunique: false
declarationsUniqueness can now be enabled with
unique: true
and disabled withunique: false
from job options or a worker definition. Theunique: true
option uses all the standard defaults, but sets the period to:infinity
for compatibility with Oban Pro's newsimple
unique mode.
... (truncated)
Commits
65d75e0
Release v2.18.22c47480
Increase xact retry delay and increase per attemptf07ee21
Ensure default opts for standard transactions141f403
Release v2.18.1d5eb591
Bump ecto_sql to 3.12.0 and ecto_sqlite3 to 0.17 (#1135)eec82cc
Document that timeouts raise an Oban.TimeoutErrorbf7f0bf
Automatically retry transactions with backoff4715ea5
Declare tags as a text array rather than varchar4d124e5
Note lack of unique conflicts for insert_all in README (#1133)bbc4291
Bump postgrex from 0.18.0 to 0.19.0 in the production-dependencies group (#1131)- Additional commits viewable in compare view
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase
.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
-
@dependabot rebase
will rebase this PR -
@dependabot recreate
will recreate this PR, overwriting any edits that have been made to it -
@dependabot merge
will merge this PR after your CI passes on it -
@dependabot squash and merge
will squash and merge this PR after your CI passes on it -
@dependabot cancel merge
will cancel a previously requested merge and block automerging -
@dependabot reopen
will reopen this PR if it is closed -
@dependabot close
will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually -
@dependabot show <dependency name> ignore conditions
will show all of the ignore conditions of the specified dependency -
@dependabot ignore this major version
will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) -
@dependabot ignore this minor version
will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) -
@dependabot ignore this dependency
will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)