Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: rails/solid_queue
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v1.1.5
Choose a base ref
...
head repository: rails/solid_queue
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: v1.2.0
Choose a head ref
  • 19 commits
  • 36 files changed
  • 11 contributors

Commits on Jun 10, 2025

  1. Support Active Job Continuations

    [Active Job Continuations](rails/rails#55127)
    will be added in Rails 8.1. Queue adapters need to implement the
    `stopping?` method to support them.
    
    Implement the method and set it to true when a worker is stopping.
    
    Also add Rails versions so we can test against Rails main. To prevent an
    explosion of combinations, I've switched to only testing against minor
    versions of Ruby.
    djmb authored and rosa committed Jun 10, 2025
    Configuration menu
    Copy the full SHA
    9bd2a1b View commit details
    Browse the repository at this point in the history

Commits on Jun 13, 2025

  1. Gracefully fail claimed executions even if the supervisor process was…

    … pruned
    
    e.g. due to sleep/wake in a dev app
    jeremy authored and rosa committed Jun 13, 2025
    Configuration menu
    Copy the full SHA
    9f12681 View commit details
    Browse the repository at this point in the history

Commits on Jun 16, 2025

  1. Configuration menu
    Copy the full SHA
    0fb7144 View commit details
    Browse the repository at this point in the history

Commits on Jun 17, 2025

  1. Write about performance considerations when using concurrency controls

    And point to the recommended way to do throttling.
    rosa committed Jun 17, 2025
    Configuration menu
    Copy the full SHA
    9ae32cb View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    6437617 View commit details
    Browse the repository at this point in the history

Commits on Jun 21, 2025

  1. fix(568): moving stop_heartbeat after shutdown so that workers are no…

    …t considered dead during a graceful shutdown
    doctomarculescu authored and rosa committed Jun 21, 2025
    Configuration menu
    Copy the full SHA
    098a004 View commit details
    Browse the repository at this point in the history

Commits on Jun 28, 2025

  1. Configuration menu
    Copy the full SHA
    e04c1f9 View commit details
    Browse the repository at this point in the history

Commits on Jul 7, 2025

  1. Configuration menu
    Copy the full SHA
    37ae2ce View commit details
    Browse the repository at this point in the history
  2. Add capability to discard duplicate jobs with concurrency configuration

    Remove 'duplicate' verbiage and use concurrency limits instead, simplify control flow
    
    Fix race condition vulnerability by changing logic to enqueue
    
    Add assertions when bulk enqueuing jobs with concurrency controls
    
    Dispatch jobs in the order they were enqueued
    
    Set ActiveJob successfully_enqueued for both enqueued/blocked and discarded jobs
    
    Change concurrency 'at_limit' -> 'on_conflict'
    
    Update discard logic to trigger an ActiveRecord rollback when attempting dispatch to prevent discarded job creation
    
    Change default on_conflict concurrency option to old behaviour (blocking execution)
    
    Add concurrent on_conflict documentation to README
    
    Add test for discarding grouped concurrent jobs
    
    Fix tests which expect raising enqueue errors
    
    Add test to confirm scheduled jobs are also discarded
    joelzwarrington authored and rosa committed Jul 7, 2025
    Configuration menu
    Copy the full SHA
    a2e2e43 View commit details
    Browse the repository at this point in the history
  3. Fix typo

    Co-authored-by: Philippe Tring <[email protected]>
    2 people authored and rosa committed Jul 7, 2025
    Configuration menu
    Copy the full SHA
    f0ea968 View commit details
    Browse the repository at this point in the history
  4. Allow duplicate jobs to be discarded

    mhenrixon authored and rosa committed Jul 7, 2025
    Configuration menu
    Copy the full SHA
    d8e0bd1 View commit details
    Browse the repository at this point in the history
  5. Tidy up after merging two branches implementing the same feature

    Brought together #523 and #586, and took some parts from each.
    Clean and enhance the README as well.
    rosa committed Jul 7, 2025
    Configuration menu
    Copy the full SHA
    bd2b655 View commit details
    Browse the repository at this point in the history

Commits on Jul 9, 2025

  1. fix: race condition with interruptibles (#566)

    * fix: race condition with interruptibles
    
    * fix: make attr_reader private
    elasticspoon authored Jul 9, 2025
    Configuration menu
    Copy the full SHA
    16fb285 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    ddfe719 View commit details
    Browse the repository at this point in the history

Commits on Jul 10, 2025

  1. improve readme to be more explicit about the recommended UI dashboard…

    … and that it will be needed to look at it via the UI
    Ian Norris authored and rosa committed Jul 10, 2025
    Configuration menu
    Copy the full SHA
    3a4b24c View commit details
    Browse the repository at this point in the history
  2. Change the approach, destroying the job when it can't be enqueued

    Otherwise we'd get inconsistent behaviour with other adapters like
    Sidekiq, where only jobs that are actually enqueued get assigned a
    provider_job_id. Turns out, issuing a DELETE query for a record that got
    inserted within a transaction works perfectly, even with bulk INSERT, so
    let's just avoid creating those jobs altogether.
    rosa committed Jul 10, 2025
    Configuration menu
    Copy the full SHA
    d23be3c View commit details
    Browse the repository at this point in the history

Commits on Jul 11, 2025

  1. rescue from EWOULDBLOCKWaitReadable

    joshleblanc authored and rosa committed Jul 11, 2025
    Configuration menu
    Copy the full SHA
    d036fbf View commit details
    Browse the repository at this point in the history
  2. Merge pull request #594 from rails/concurrency-on-conflict-discard

    Add support for a `discard` option in concurrency controls
    rosa authored Jul 11, 2025
    Configuration menu
    Copy the full SHA
    a912126 View commit details
    Browse the repository at this point in the history
  3. Bump solid_queue to 1.2.0

    rosa committed Jul 11, 2025
    Configuration menu
    Copy the full SHA
    5e0586f View commit details
    Browse the repository at this point in the history
Loading