Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bump oban from 2.15.4 to 2.17.7 #170

Closed
wants to merge 1 commit into from
Closed

Conversation

dependabot[bot]
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Mar 26, 2024

Bumps oban from 2.15.4 to 2.17.7.

Release notes

Sourced from oban's releases.

v2.17.6

Enhancements

  • [Cron] Include cron indicator and original cron expression in meta.

    When the Cron plugin inserts jobs the original, unnormalized cron expression is now stored in a job's meta under the cron_expr key. For compatibility with Pro's DynamicCron, meta also has cron: true injected.

  • [Worker] Change backoff/1 spec to allow immediate rescheduling by returning 0

    The callback now specifies a non_neg_integer to allow retrying 0 seconds into the future. This matches the abilitiy to use {:snooze, 0}.

Bug Fixes

  • [Notifier] Revert using single connection to deliver notices.

    Production use of the single notifier connection in various environments showed timeouts from bottlenecks in the single connection could crash the connection and start new ones, leaving extra idle processes. In addition, Use interpolated NOTIFY instead of pg_notify with a JSON argument added parsing load because it could no longer use prepared statements.

  • [Worker] Apply custom backoff on timeout and unhandled exit

    A worker's custom backoff/1 wasn't applied after a TimeoutError or unhandled exit. That's because the producer stores the executor struct before resolving the worker module. Now the module is resolved again to ensure custom backoff/1 are used.

  • [Job] Revert setting the default priority key in Job schema.

    The Ecto default was removed to allow overriding the default in the database and it was purposefully removed.

v2.17.5

Enhancements

  • [Notifier] Use the Postgres notifier's connection to deliver notifications.

    The Postgres notifier holds a single connection for listening and relaying messages. However, it wasn't used to dispatch messages; that was left to queries through the Ecto pool. Those queries were noisy and put unnecessary load on the pool, particularly from insert notifications.

    Now notifications are delivered through the notifier's connection—they don't require a pool checkout, and they won't clutter Ecto logs or telemetry.

  • [Engine] Emit insert trigger notification directly from Engine callbacks.

    Notifications are now sent from the engine, within the insert_* telemetry block, so the timing impact is visible. In addition, notifications aren't emitted for scheduled jobs, as there's nothing ready for producers to fetch.

Bug Fixes

  • [Notifier] Track and compare sonar pings using the correct time unit.

    The notifier's status tracker pruned stale nodes using mismatched time units, causing constant status change events despite nothing changing. This ensures the recorded and compared times are both milliseconds, not a mixture of seconds and native time.

  • [Cron] Retain @reboot cron entries until node becomes leader.

    With rolling deploys it is frequent that a node isn't the leader the first time cron evaluates. However, @reboot expressions were discarded after the first run, which prevented reboots from being inserted when the node acquired leadership.

  • [Oban] Require Ecto v3.10 to support materialized flag added in the previous patch.

... (truncated)

Changelog

Sourced from oban's changelog.

v2.17.7 — 2024-03-25

Bug Fixes

  • [Notifier] Prevent Sonar from running in :testing modes.

    Sonar has no purpose during tests, and it can cause sandbox issues when tests run with the Postgres notifier.

  • [Oban] Correctly handle pause and resume all with opts.

    The primary clause had two default arguments and it was impossible to call pause_all_queues/1 or resume_all_queues/1 with opts and no name.

v2.17.6 — 2024-03-01

Enhancements

  • [Cron] Include cron indicator and original cron expression in meta.

    When the Cron plugin inserts jobs the original, unnormalized cron expression is now stored in a job's meta under the cron_expr key. For compatibility with Pro's DynamicCron, meta also has cron: true injected.

  • [Worker] Change backoff/1 spec to allow immediate rescheduling by returning 0

    The callback now specifies a non_neg_integer to allow retrying 0 seconds into the future. This matches the abilitiy to use {:snooze, 0}.

Bug Fixes

  • [Notifier] Revert using single connection to deliver notices.

    Production use of the single notifier connection in various environments showed timeouts from bottlenecks in the single connection could crash the connection and start new ones, leaving extra idle processes. In addition, Use interpolated NOTIFY instead of pg_notify with a JSON argument added parsing load because it could no longer use prepared statements.

  • [Worker] Apply custom backoff on timeout and unhandled exit

    A worker's custom backoff/1 wasn't applied after a TimeoutError or unhandled exit. That's because the producer stores the executor struct before resolving the worker module. Now the module is resolved again to ensure custom backoff/1 are used.

  • [Job] Revert setting the default priority key in Job schema.

    The Ecto default was removed to allow overriding the default in the database and it was purposefully removed.

v2.17.5 — 2024-02-25

... (truncated)

Commits
  • 8ae1188 Release v2.17.7
  • 207dc48 Combine Notifier Events sections in telemetry docs
  • 156c5c8 Prevent sonar from starting in test modes
  • a79f900 Clarify that args values must be encodable as JSON
  • 6e97606 Bump ex_doc from 0.31.1 to 0.31.2 (#1053)
  • 3e9f936 Correctly handle pause/resume all with opts
  • cc30d4c Bump postgrex from 0.17.4 to 0.17.5 (#1051)
  • 25b6481 Release v2.17.6
  • 019c60b Revert using single connection to deliver notices
  • 8401bbd Change c:backoff/1 to allow immediate rescheduling
  • Additional commits viewable in compare view

Dependabot compatibility score

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)

Bumps [oban](https://github.com/sorentwo/oban) from 2.15.4 to 2.17.7.
- [Release notes](https://github.com/sorentwo/oban/releases)
- [Changelog](https://github.com/sorentwo/oban/blob/main/CHANGELOG.md)
- [Commits](oban-bg/oban@v2.15.4...v2.17.7)

---
updated-dependencies:
- dependency-name: oban
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot bot added the dependencies Pull requests that update a dependency file label Mar 26, 2024
@dependabot dependabot bot requested a review from aef- March 26, 2024 04:34
Copy link
Contributor Author

dependabot bot commented on behalf of github Apr 8, 2024

Superseded by #171.

@dependabot dependabot bot closed this Apr 8, 2024
@dependabot dependabot bot deleted the dependabot/hex/oban-2.17.7 branch April 8, 2024 04:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Pull requests that update a dependency file
Projects
None yet
Development

Successfully merging this pull request may close these issues.

0 participants