diff --git a/.ruby-version b/.ruby-version index bea438e9..fa7adc7a 100644 --- a/.ruby-version +++ b/.ruby-version @@ -1 +1 @@ -3.3.1 +3.3.5 diff --git a/Gemfile.lock b/Gemfile.lock index 5aeb2b79..c23a2210 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -175,6 +175,7 @@ PLATFORMS arm64-darwin-23 x86_64-darwin-21 x86_64-darwin-23 + x86_64-darwin-24 x86_64-linux DEPENDENCIES diff --git a/README.md b/README.md index 0f9a19a0..04c6c293 100644 --- a/README.md +++ b/README.md @@ -233,7 +233,7 @@ There are several settings that control how Solid Queue works that you can set a - `silence_polling`: whether to silence Active Record logs emitted when polling for both workers and dispatchers—defaults to `true`. - `supervisor_pidfile`: path to a pidfile that the supervisor will create when booting to prevent running more than one supervisor in the same host, or in case you want to use it for a health check. It's `nil` by default. - `preserve_finished_jobs`: whether to keep finished jobs in the `solid_queue_jobs` table—defaults to `true`. -- `clear_finished_jobs_after`: period to keep finished jobs around, in case `preserve_finished_jobs` is true—defaults to 1 day. **Note:** Right now, there's no automatic cleanup of finished jobs. You'd need to do this by periodically invoking `SolidQueue::Job.clear_finished_in_batches`, but this will happen automatically in the near future. +- `clear_finished_jobs_after`: period to keep finished jobs around, in case `preserve_finished_jobs` is `true`-defaults to 1 day. Ensure recurring.yml runs the command `SolidQueue::Job.clear_finished_in_batches` at an appropriate cadence (e.g. hourly) to ensure finished jobs are cleared. - `default_concurrency_control_period`: the value to be used as the default for the `duration` parameter in [concurrency controls](#concurrency-controls). It defaults to 3 minutes. ## Errors when enqueuing diff --git a/lib/generators/solid_queue/install/templates/config/recurring.yml b/lib/generators/solid_queue/install/templates/config/recurring.yml index d045b191..1ee2ed5c 100644 --- a/lib/generators/solid_queue/install/templates/config/recurring.yml +++ b/lib/generators/solid_queue/install/templates/config/recurring.yml @@ -1,10 +1,15 @@ -# production: -# periodic_cleanup: -# class: CleanSoftDeletedRecordsJob -# queue: background -# args: [ 1000, { batch_size: 500 } ] -# schedule: every hour -# periodic_command: -# command: "SoftDeletedRecord.due.delete_all" -# priority: 2 -# schedule: at 5am every day +production: + solid_queue_cleanup: + command: "SolidQueue::Job.clear_finished_in_batches" + schedule: every hour + + # periodic_cleanup: + # class: CleanSoftDeletedRecordsJob + # queue: background + # args: [ 1000, { batch_size: 500 } ] + # schedule: every hour + + # periodic_command: + # command: "SoftDeletedRecord.due.delete_all" + # priority: 2 + # schedule: at 5am every day