good_job 3.6.0 → 3.6.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +52 -22
- data/README.md +13 -13
- data/app/controllers/good_job/jobs_controller.rb +1 -1
- data/config/locales/ua.yml +107 -0
- data/lib/good_job/version.rb +1 -1
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 2bcf55b958dd5e2d0c0711ff1d1a52e94daa21a0f54c96e264934be70f4eb71a
|
4
|
+
data.tar.gz: bafd6907fd2f9ed5bf41b04b0d3f844407c85de9b488f6c0715413a77134ef27
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 34ea4a118657a0ea9fb43ef82e6d01fc275269bb8d172d9a6baa4db30af141faf90256e350a77fe09bb821cfdf51c4efe0416576576809b377ed68a4408cc339
|
7
|
+
data.tar.gz: 96f8567cbd0c52742dd5e60046c8e81d249de5a78a6a7f3dde1f0185316407e965f060275bcfce2fc902df3c27ae83124d37351f241dba7241443c652a168837
|
data/CHANGELOG.md
CHANGED
@@ -1,30 +1,63 @@
|
|
1
1
|
# Changelog
|
2
2
|
|
3
|
-
## [v3.6.
|
3
|
+
## [v3.6.2](https://github.com/bensheldon/good_job/tree/v3.6.2) (2022-12-04)
|
4
4
|
|
5
|
-
[Full Changelog](https://github.com/bensheldon/good_job/compare/v3.
|
5
|
+
[Full Changelog](https://github.com/bensheldon/good_job/compare/v3.6.1...v3.6.2)
|
6
6
|
|
7
|
-
**
|
7
|
+
**Merged pull requests:**
|
8
8
|
|
9
|
-
-
|
9
|
+
- Redirect to Jobs path after destroy [\#754](https://github.com/bensheldon/good_job/pull/754) ([BilalBudhani](https://github.com/BilalBudhani))
|
10
|
+
- Bump pg from 1.4.4 to 1.4.5 [\#751](https://github.com/bensheldon/good_job/pull/751) ([dependabot[bot]](https://github.com/apps/dependabot))
|
11
|
+
|
12
|
+
## [v3.6.1](https://github.com/bensheldon/good_job/tree/v3.6.1) (2022-11-30)
|
13
|
+
|
14
|
+
[Full Changelog](https://github.com/bensheldon/good_job/compare/v3.6.0...v3.6.1)
|
15
|
+
|
16
|
+
**Implemented enhancements:**
|
17
|
+
|
18
|
+
- add UA to i18n [\#747](https://github.com/bensheldon/good_job/pull/747) ([yshmarov](https://github.com/yshmarov))
|
19
|
+
|
20
|
+
**Closed issues:**
|
21
|
+
|
22
|
+
- Minor Cron Concurrency Clarification [\#743](https://github.com/bensheldon/good_job/issues/743)
|
23
|
+
- Materialized CTE performance bottleneck [\#720](https://github.com/bensheldon/good_job/issues/720)
|
24
|
+
- Calculating database connections [\#669](https://github.com/bensheldon/good_job/issues/669)
|
10
25
|
|
11
26
|
**Merged pull requests:**
|
12
27
|
|
13
|
-
-
|
28
|
+
- Update gems, rubocop, and development ruby \(v2.7.7\) [\#752](https://github.com/bensheldon/good_job/pull/752) ([bensheldon](https://github.com/bensheldon))
|
29
|
+
- Add chrome/chromdriver to Codespace configuration [\#746](https://github.com/bensheldon/good_job/pull/746) ([bensheldon](https://github.com/bensheldon))
|
30
|
+
- Add GitHub Codespaces / devcontainer configuration [\#745](https://github.com/bensheldon/good_job/pull/745) ([bensheldon](https://github.com/bensheldon))
|
31
|
+
- Bump fugit from 1.7.1 to 1.7.2 [\#742](https://github.com/bensheldon/good_job/pull/742) ([dependabot[bot]](https://github.com/apps/dependabot))
|
32
|
+
- Bundle update and Rubocop lints [\#740](https://github.com/bensheldon/good_job/pull/740) ([bensheldon](https://github.com/bensheldon))
|
33
|
+
- Add dependabot to update development dependencies [\#734](https://github.com/bensheldon/good_job/pull/734) ([bensheldon](https://github.com/bensheldon))
|
34
|
+
- Fix misspellings and grammar in README [\#732](https://github.com/bensheldon/good_job/pull/732) ([aisayo](https://github.com/aisayo))
|
35
|
+
|
36
|
+
## [v3.6.0](https://github.com/bensheldon/good_job/tree/v3.6.0) (2022-10-22)
|
37
|
+
|
38
|
+
[Full Changelog](https://github.com/bensheldon/good_job/compare/v3.5.1...v3.6.0)
|
39
|
+
|
40
|
+
**Implemented enhancements:**
|
41
|
+
|
14
42
|
- Add configurable limit \(`queue_select_limit`\) when querying candidate jobs [\#727](https://github.com/bensheldon/good_job/pull/727) ([mitchellhenke](https://github.com/mitchellhenke))
|
15
43
|
- Add index to `good_jobs` to improve querying candidate jobs [\#726](https://github.com/bensheldon/good_job/pull/726) ([mitchellhenke](https://github.com/mitchellhenke))
|
16
44
|
|
45
|
+
**Fixed bugs:**
|
46
|
+
|
47
|
+
- 3.4.8 release breaks job retrying [\#728](https://github.com/bensheldon/good_job/issues/728)
|
48
|
+
- Redo: When not preserving job records, ensure all prior executions are deleted after successful retry [\#730](https://github.com/bensheldon/good_job/pull/730) ([bensheldon](https://github.com/bensheldon))
|
49
|
+
|
17
50
|
## [v3.5.1](https://github.com/bensheldon/good_job/tree/v3.5.1) (2022-10-20)
|
18
51
|
|
19
52
|
[Full Changelog](https://github.com/bensheldon/good_job/compare/v3.5.0...v3.5.1)
|
20
53
|
|
21
|
-
**
|
54
|
+
**Fixed bugs:**
|
22
55
|
|
23
|
-
-
|
56
|
+
- Revert "When not preserving job records, ensure all prior executions are deleted after successful retry" because some retry patterns stopped working [\#729](https://github.com/bensheldon/good_job/pull/729) ([bensheldon](https://github.com/bensheldon))
|
24
57
|
|
25
|
-
**
|
58
|
+
**Closed issues:**
|
26
59
|
|
27
|
-
-
|
60
|
+
- Assert cancelled jobs [\#724](https://github.com/bensheldon/good_job/issues/724)
|
28
61
|
|
29
62
|
## [v3.5.0](https://github.com/bensheldon/good_job/tree/v3.5.0) (2022-10-18)
|
30
63
|
|
@@ -40,7 +73,7 @@
|
|
40
73
|
|
41
74
|
[Full Changelog](https://github.com/bensheldon/good_job/compare/v3.4.7...v3.4.8)
|
42
75
|
|
43
|
-
**
|
76
|
+
**Fixed bugs:**
|
44
77
|
|
45
78
|
- When not preserving job records, ensure all prior executions are deleted after successful retry [\#719](https://github.com/bensheldon/good_job/pull/719) ([ylansegal](https://github.com/ylansegal))
|
46
79
|
|
@@ -124,6 +157,7 @@
|
|
124
157
|
**Fixed bugs:**
|
125
158
|
|
126
159
|
- Jobs enqueued via dashboard ignores app default\_locale [\#697](https://github.com/bensheldon/good_job/issues/697)
|
160
|
+
- Enqueues Cron jobs with I18n default locale [\#698](https://github.com/bensheldon/good_job/pull/698) ([esasse](https://github.com/esasse))
|
127
161
|
- Include better exception log messages, including class and backtrace [\#693](https://github.com/bensheldon/good_job/pull/693) ([bensheldon](https://github.com/bensheldon))
|
128
162
|
|
129
163
|
**Closed issues:**
|
@@ -133,10 +167,6 @@
|
|
133
167
|
- ActiveRecord::StatementInvalid: PG::ConnectionBad: PQsocket\(\) can't get socket descriptor every 30 minutes aprox. [\#579](https://github.com/bensheldon/good_job/issues/579)
|
134
168
|
- Handle assets in dashboard when rails app is behind proxy path [\#424](https://github.com/bensheldon/good_job/issues/424)
|
135
169
|
|
136
|
-
**Merged pull requests:**
|
137
|
-
|
138
|
-
- Enqueues Cron jobs with I18n default locale [\#698](https://github.com/bensheldon/good_job/pull/698) ([esasse](https://github.com/esasse))
|
139
|
-
|
140
170
|
## [v3.4.1](https://github.com/bensheldon/good_job/tree/v3.4.1) (2022-08-06)
|
141
171
|
|
142
172
|
[Full Changelog](https://github.com/bensheldon/good_job/compare/v3.4.0...v3.4.1)
|
@@ -1022,7 +1052,7 @@
|
|
1022
1052
|
- Warn in Readme that configuration should not go into `config/initializers/*.rb` [\#418](https://github.com/bensheldon/good_job/pull/418) ([bensheldon](https://github.com/bensheldon))
|
1023
1053
|
- Replace worker wording [\#409](https://github.com/bensheldon/good_job/pull/409) ([Hugo-Hache](https://github.com/Hugo-Hache))
|
1024
1054
|
- Improve Readme's "Optimize queues, threads, processes" section [\#405](https://github.com/bensheldon/good_job/pull/405) ([Hugo-Hache](https://github.com/Hugo-Hache))
|
1025
|
-
- Update GH Test Matrix with more PG versions [\#401](https://github.com/bensheldon/good_job/pull/401) ([
|
1055
|
+
- Update GH Test Matrix with more PG versions [\#401](https://github.com/bensheldon/good_job/pull/401) ([tedthetnaungsoe](https://github.com/tedthetnaungsoe))
|
1026
1056
|
- Extract cron configuration hash into CronEntry ActiveModel objects [\#400](https://github.com/bensheldon/good_job/pull/400) ([bensheldon](https://github.com/bensheldon))
|
1027
1057
|
- Remove errant copy-paste from app.json [\#397](https://github.com/bensheldon/good_job/pull/397) ([morgoth](https://github.com/morgoth))
|
1028
1058
|
|
@@ -1062,7 +1092,7 @@
|
|
1062
1092
|
|
1063
1093
|
**Merged pull requests:**
|
1064
1094
|
|
1065
|
-
- Update GH Test Matrix with latest JRuby 9.3.0.0 [\#387](https://github.com/bensheldon/good_job/pull/387) ([
|
1095
|
+
- Update GH Test Matrix with latest JRuby 9.3.0.0 [\#387](https://github.com/bensheldon/good_job/pull/387) ([tedthetnaungsoe](https://github.com/tedthetnaungsoe))
|
1066
1096
|
- Improve test support's ShellOut command's process termination and add test logs [\#385](https://github.com/bensheldon/good_job/pull/385) ([bensheldon](https://github.com/bensheldon))
|
1067
1097
|
- @bensheldon Add Rails 7 alpha to Appraisal; update development dependencies [\#384](https://github.com/bensheldon/good_job/pull/384) ([bensheldon](https://github.com/bensheldon))
|
1068
1098
|
|
@@ -1321,7 +1351,7 @@
|
|
1321
1351
|
|
1322
1352
|
- Have prettier Dashboard asset urls e.g. `bootstrap.css` instead of `bootstrap_css.css` [\#306](https://github.com/bensheldon/good_job/pull/306) ([bensheldon](https://github.com/bensheldon))
|
1323
1353
|
- Create dashboard demo app on Heroku [\#305](https://github.com/bensheldon/good_job/pull/305) ([bensheldon](https://github.com/bensheldon))
|
1324
|
-
- Add Frozen String Literal to all files [\#302](https://github.com/bensheldon/good_job/pull/302) ([
|
1354
|
+
- Add Frozen String Literal to all files [\#302](https://github.com/bensheldon/good_job/pull/302) ([tedthetnaungsoe](https://github.com/tedthetnaungsoe))
|
1325
1355
|
|
1326
1356
|
## [v1.11.2](https://github.com/bensheldon/good_job/tree/v1.11.2) (2021-07-20)
|
1327
1357
|
|
@@ -1379,7 +1409,7 @@
|
|
1379
1409
|
|
1380
1410
|
**Merged pull requests:**
|
1381
1411
|
|
1382
|
-
- Update GH Test Matrix with latest JRuby 9.2.19.0 [\#283](https://github.com/bensheldon/good_job/pull/283) ([
|
1412
|
+
- Update GH Test Matrix with latest JRuby 9.2.19.0 [\#283](https://github.com/bensheldon/good_job/pull/283) ([tedthetnaungsoe](https://github.com/tedthetnaungsoe))
|
1383
1413
|
|
1384
1414
|
## [v1.10.0](https://github.com/bensheldon/good_job/tree/v1.10.0) (2021-06-29)
|
1385
1415
|
|
@@ -1529,11 +1559,11 @@
|
|
1529
1559
|
- Move executable flags from constants to accessors on GoodJob::CLI [\#234](https://github.com/bensheldon/good_job/pull/234) ([bensheldon](https://github.com/bensheldon))
|
1530
1560
|
- Add custom Scheduler::TimerSet [\#232](https://github.com/bensheldon/good_job/pull/232) ([bensheldon](https://github.com/bensheldon))
|
1531
1561
|
- Fix assorted constant references in YARD documentation [\#231](https://github.com/bensheldon/good_job/pull/231) ([bensheldon](https://github.com/bensheldon))
|
1532
|
-
- Update GH Test Matrix with latest JRuby 9.2.17.0 [\#228](https://github.com/bensheldon/good_job/pull/228) ([
|
1562
|
+
- Update GH Test Matrix with latest JRuby 9.2.17.0 [\#228](https://github.com/bensheldon/good_job/pull/228) ([tedthetnaungsoe](https://github.com/tedthetnaungsoe))
|
1533
1563
|
- Update gem dependencies [\#227](https://github.com/bensheldon/good_job/pull/227) ([bensheldon](https://github.com/bensheldon))
|
1534
1564
|
- Remove leftover text from Readme [\#226](https://github.com/bensheldon/good_job/pull/226) ([weh](https://github.com/weh))
|
1535
1565
|
- Fix appraisal and bundler version CI conflicts [\#224](https://github.com/bensheldon/good_job/pull/224) ([bensheldon](https://github.com/bensheldon))
|
1536
|
-
- Update GH Test Matrix with latest JRuby [\#223](https://github.com/bensheldon/good_job/pull/223) ([
|
1566
|
+
- Update GH Test Matrix with latest JRuby [\#223](https://github.com/bensheldon/good_job/pull/223) ([tedthetnaungsoe](https://github.com/tedthetnaungsoe))
|
1537
1567
|
|
1538
1568
|
## [v1.8.0](https://github.com/bensheldon/good_job/tree/v1.8.0) (2021-03-04)
|
1539
1569
|
|
@@ -1616,8 +1646,8 @@
|
|
1616
1646
|
**Merged pull requests:**
|
1617
1647
|
|
1618
1648
|
- Update bundler version to 2.2.5 [\#200](https://github.com/bensheldon/good_job/pull/200) ([bensheldon](https://github.com/bensheldon))
|
1619
|
-
- Update GH Test Matrix with minimum & latest JRuby version [\#197](https://github.com/bensheldon/good_job/pull/197) ([
|
1620
|
-
- Fix JRuby version number [\#193](https://github.com/bensheldon/good_job/pull/193) ([
|
1649
|
+
- Update GH Test Matrix with minimum & latest JRuby version [\#197](https://github.com/bensheldon/good_job/pull/197) ([tedthetnaungsoe](https://github.com/tedthetnaungsoe))
|
1650
|
+
- Fix JRuby version number [\#193](https://github.com/bensheldon/good_job/pull/193) ([tedthetnaungsoe](https://github.com/tedthetnaungsoe))
|
1621
1651
|
|
1622
1652
|
## [v1.4.1](https://github.com/bensheldon/good_job/tree/v1.4.1) (2021-01-09)
|
1623
1653
|
|
data/README.md
CHANGED
@@ -153,7 +153,7 @@ For more of the story of GoodJob, read the [introductory blog post](https://isla
|
|
153
153
|
|
154
154
|
### Command-line options
|
155
155
|
|
156
|
-
There several top-level commands available through the `good_job` command-line tool.
|
156
|
+
There are several top-level commands available through the `good_job` command-line tool.
|
157
157
|
|
158
158
|
Configuration options are available with `help`.
|
159
159
|
|
@@ -275,7 +275,7 @@ Available configuration options are:
|
|
275
275
|
- `max_threads` (integer) sets the default number of threads per pool to use for working jobs. You can also set this with the environment variable `GOOD_JOB_MAX_THREADS`.
|
276
276
|
- `poll_interval` (integer) sets the number of seconds between polls for jobs when `execution_mode` is set to `:async`. You can also set this with the environment variable `GOOD_JOB_POLL_INTERVAL`. A poll interval of `-1` disables polling completely.
|
277
277
|
- `max_cache` (integer) sets the maximum number of scheduled jobs that will be stored in memory to reduce execution latency when also polling for scheduled jobs. Caching 10,000 scheduled jobs uses approximately 20MB of memory. You can also set this with the environment variable `GOOD_JOB_MAX_CACHE`.
|
278
|
-
- `shutdown_timeout` (
|
278
|
+
- `shutdown_timeout` (integer) number of seconds to wait for jobs to finish when shutting down before stopping the thread. Defaults to forever: `-1`. You can also set this with the environment variable `GOOD_JOB_SHUTDOWN_TIMEOUT`.
|
279
279
|
- `enable_cron` (boolean) whether to run cron process. Defaults to `false`. You can also set this with the environment variable `GOOD_JOB_ENABLE_CRON`.
|
280
280
|
- `cron` (hash) cron configuration. Defaults to `{}`. You can also set this as a JSON string with the environment variable `GOOD_JOB_CRON`
|
281
281
|
- `cleanup_discarded_jobs` (boolean) whether to destroy discarded jobs when cleaning up preserved jobs using the `$ good_job cleanup_preserved_jobs` CLI command or calling `GoodJob.cleanup_preserved_jobs`. Defaults to `true`. Can also be set with the environment variable `GOOD_JOB_CLEANUP_DISCARDED_JOBS`. _This configuration is only used when {GoodJob.preserve_job_records} is `true`._
|
@@ -286,7 +286,7 @@ Available configuration options are:
|
|
286
286
|
- `logger` ([Rails Logger](https://api.rubyonrails.org/classes/ActiveSupport/Logger.html)) lets you set a custom logger for GoodJob. It should be an instance of a Rails `Logger` (Default: `Rails.logger`).
|
287
287
|
- `preserve_job_records` (boolean) keeps job records in your database even after jobs are completed. (Default: `true`)
|
288
288
|
- `retry_on_unhandled_error` (boolean) causes jobs to be re-queued and retried if they raise an instance of `StandardError`. Be advised this may lead to jobs being repeated infinitely ([see below for more on retries](#retries)). Instances of `Exception`, like SIGINT, will *always* be retried, regardless of this attribute’s value. (Default: `false`)
|
289
|
-
- `on_thread_error` (proc, lambda, or callable) will be called when an Exception. It can be useful for logging errors to bug tracking services, like Sentry or Airbrake. Example:
|
289
|
+
- `on_thread_error` (proc, lambda, or callable) will be called when there is an Exception. It can be useful for logging errors to bug tracking services, like Sentry or Airbrake. Example:
|
290
290
|
|
291
291
|
```ruby
|
292
292
|
config.good_job.on_thread_error = -> (exception) { Sentry.capture_exception(exception) }
|
@@ -327,7 +327,7 @@ The following options are also configurable via accessors, but you are encourage
|
|
327
327
|
- **`GoodJob.logger`** ([Rails Logger](https://api.rubyonrails.org/classes/ActiveSupport/Logger.html)) lets you set a custom logger for GoodJob. It should be an instance of a Rails `Logger`.
|
328
328
|
- **`GoodJob.preserve_job_records`** (boolean) keeps job records in your database even after jobs are completed. (Default: `true`)
|
329
329
|
- **`GoodJob.retry_on_unhandled_error`** (boolean) causes jobs to be re-queued and retried if they raise an instance of `StandardError`. Be advised this may lead to jobs being repeated infinitely ([see below for more on retries](#retries)). Instances of `Exception`, like SIGINT, will *always* be retried, regardless of this attribute’s value. (Default: `false`)
|
330
|
-
- **`GoodJob.on_thread_error`** (proc, lambda, or callable) will be called when an Exception. It can be useful for logging errors to bug tracking services, like Sentry or Airbrake.
|
330
|
+
- **`GoodJob.on_thread_error`** (proc, lambda, or callable) will be called when there is an Exception. It can be useful for logging errors to bug tracking services, like Sentry or Airbrake.
|
331
331
|
|
332
332
|
### Dashboard
|
333
333
|
|
@@ -379,7 +379,7 @@ require 'good_job/engine' # <= Add this line
|
|
379
379
|
|
380
380
|
#### API-only Rails applications
|
381
381
|
|
382
|
-
API-only Rails applications may not have all of the required Rack middleware for the GoodJob Dashboard to function. To re-add the
|
382
|
+
API-only Rails applications may not have all of the required Rack middleware for the GoodJob Dashboard to function. To re-add the middleware:
|
383
383
|
|
384
384
|
```ruby
|
385
385
|
# config/application.rb
|
@@ -400,7 +400,7 @@ The Dashboard can be set to automatically refresh by checking "Live Poll" in the
|
|
400
400
|
|
401
401
|
### ActiveJob concurrency
|
402
402
|
|
403
|
-
GoodJob can extend ActiveJob to provide limits on concurrently running jobs, either at time of _enqueue_ or at _perform_. Limiting concurrency can help prevent duplicate, double or
|
403
|
+
GoodJob can extend ActiveJob to provide limits on concurrently running jobs, either at time of _enqueue_ or at _perform_. Limiting concurrency can help prevent duplicate, double or unnecessary jobs from being enqueued, or race conditions when performing, for example when interacting with 3rd-party APIs.
|
404
404
|
|
405
405
|
```ruby
|
406
406
|
class MyJob < ApplicationJob
|
@@ -460,7 +460,7 @@ GoodJob's concurrency control strategy for `perform_limit` is "optimistic retry
|
|
460
460
|
|
461
461
|
GoodJob can enqueue jobs on a recurring basis that can be used as a replacement for cron.
|
462
462
|
|
463
|
-
Cron-style jobs are run on every GoodJob process (e.g. CLI or `async` execution mode) when `config.good_job.enable_cron = true`, but GoodJob's cron uses unique indexes to ensure that only a single job is
|
463
|
+
Cron-style jobs are run on every GoodJob process (e.g. CLI or `async` execution mode) when `config.good_job.enable_cron = true`, but GoodJob's cron uses unique indexes to ensure that only a single job is enqueued at the given time interval.
|
464
464
|
|
465
465
|
Cron-format is parsed by the [`fugit`](https://github.com/floraison/fugit) gem, which has support for seconds-level resolution (e.g. `* * * * * *`) and natural language parsing (e.g. `every second`).
|
466
466
|
|
@@ -542,7 +542,7 @@ GoodJob v2 introduces a new Advisory Lock key format that is operationally diffe
|
|
542
542
|
|
543
543
|
1. Upgrade your production environment to `v1.99.x` following the minor version upgrade process, including database migrations. `v1.99` is a transitional release that is safely compatible with both `v1.x` and `v2.0.0` because it uses both `v1`- and `v2`-formatted advisory locks.
|
544
544
|
1. Address any deprecation warnings generated by `v1.99`.
|
545
|
-
1. Upgrade your production environment
|
545
|
+
1. Upgrade your production environment from `v1.99.x` to `v2.0.x` again following the _minor_ upgrade process.
|
546
546
|
|
547
547
|
Notable changes:
|
548
548
|
|
@@ -748,14 +748,14 @@ The queue process will not crash if the connections pool is exhausted, instead i
|
|
748
748
|
|
749
749
|
When running GoodJob in a production environment, you should be mindful of:
|
750
750
|
|
751
|
-
- [Execution mode](execute-jobs-async--in-process)
|
751
|
+
- [Execution mode](#execute-jobs-async--in-process)
|
752
752
|
- [Database connection pool size](#database-connections)
|
753
753
|
- [Health check probes](#cli-http-health-check-probes) and potentially the [instrumentation support](#monitor-and-preserve-worked-jobs)
|
754
754
|
|
755
755
|
The recommended way to monitor the queue in production is:
|
756
756
|
|
757
|
-
- have an exception notifier callback (see `on_thread_error`)
|
758
|
-
- if possible, run the queue as a dedicated instance and use available HTTP health check probes instead of
|
757
|
+
- have an exception notifier callback (see [`on_thread_error`](#configuration-options))
|
758
|
+
- if possible, run the queue as a dedicated instance and use available HTTP health check probes instead of PID-based monitoring
|
759
759
|
- keep an eye on the number of jobs in the queue (abnormal high number of unscheduled jobs means the queue could be underperforming)
|
760
760
|
- consider performance monitoring services which support the built-in Rails instrumentation (eg. Sentry, Skylight, etc.)
|
761
761
|
|
@@ -953,7 +953,7 @@ It is also possible to manually trigger a cleanup of preserved job records:
|
|
953
953
|
|
954
954
|
### Write tests
|
955
955
|
|
956
|
-
By default, GoodJob uses its inline adapter in the test environment; the inline adapter is designed for the test environment. When
|
956
|
+
By default, GoodJob uses its inline adapter in the test environment; the inline adapter is designed for the test environment. When enqueuing a job with GoodJob's inline adapter, the job will be executed immediately on the current thread; unhandled exceptions will be raised.
|
957
957
|
|
958
958
|
In GoodJob 2.0, the inline adapter will execute future scheduled jobs immediately. In the next major release, GoodJob 3.0, the inline adapter will not execute future scheduled jobs and instead enqueue them in the database.
|
959
959
|
|
@@ -1067,7 +1067,7 @@ spec:
|
|
1067
1067
|
All contributions, from feedback to code and beyond, are welcomed and appreciated 🙏
|
1068
1068
|
|
1069
1069
|
- Review the [Prioritized Project Backlog](https://github.com/bensheldon/good_job/projects/1).
|
1070
|
-
- Open a new
|
1070
|
+
- Open a new issue or contribute to an [existing Issue](https://github.com/bensheldon/good_job/issues). Questions or suggestions are fantastic.
|
1071
1071
|
- Participate according to our [Code of Conduct](/CODE_OF_CONDUCT.md).
|
1072
1072
|
- Financially support the project via [Sponsorship](https://github.com/sponsors/bensheldon).
|
1073
1073
|
|
@@ -80,7 +80,7 @@ module GoodJob
|
|
80
80
|
def destroy
|
81
81
|
@job = Job.find(params[:id])
|
82
82
|
@job.destroy_job
|
83
|
-
|
83
|
+
redirect_to jobs_path, notice: "Job has been destroyed" # rubocop:disable Rails/I18nLocaleTexts
|
84
84
|
end
|
85
85
|
|
86
86
|
private
|
@@ -0,0 +1,107 @@
|
|
1
|
+
---
|
2
|
+
ua:
|
3
|
+
datetime:
|
4
|
+
distance_in_words:
|
5
|
+
about_x_hours:
|
6
|
+
few: близько %{count} години
|
7
|
+
many: близько %{count} годин
|
8
|
+
one: близько 1 години
|
9
|
+
other: близько %{count} години
|
10
|
+
about_x_months:
|
11
|
+
few: близько %{count} місяців
|
12
|
+
many: близько %{count} місяців
|
13
|
+
one: близько 1 місяцю
|
14
|
+
other: близько %{count} місяцю
|
15
|
+
about_x_years:
|
16
|
+
few: близько %{count} років
|
17
|
+
many: близько %{count} років
|
18
|
+
one: близько 1 року
|
19
|
+
other: близько %{count} років
|
20
|
+
almost_x_years:
|
21
|
+
few: майже %{count} роки
|
22
|
+
many: майже %{count} років
|
23
|
+
one: майже 1 рік
|
24
|
+
other: майже %{count} років
|
25
|
+
half_a_minute: пів хвилини
|
26
|
+
less_than_x_minutes:
|
27
|
+
few: менше %{count} хвилин
|
28
|
+
many: менше %{count} хвилин
|
29
|
+
one: менше 1 хвилини
|
30
|
+
other: менше %{count} хвилини
|
31
|
+
less_than_x_seconds:
|
32
|
+
few: менше %{count} секунд
|
33
|
+
many: менше %{count} секунд
|
34
|
+
one: менше 1 секунди
|
35
|
+
other: менше %{count} секунди
|
36
|
+
over_x_years:
|
37
|
+
few: більше %{count} років
|
38
|
+
many: більше %{count} років
|
39
|
+
one: більше 1 року
|
40
|
+
other: більше %{count} років
|
41
|
+
x_days:
|
42
|
+
few: "%{count} дня"
|
43
|
+
many: "%{count} днів"
|
44
|
+
one: 1 день
|
45
|
+
other: "%{count} дня"
|
46
|
+
x_minutes:
|
47
|
+
few: "%{count} хвилини"
|
48
|
+
many: "%{count} хвилин"
|
49
|
+
one: 1 хвилину
|
50
|
+
other: "%{count} хвилини"
|
51
|
+
x_months:
|
52
|
+
few: "%{count} місяцю"
|
53
|
+
many: "%{count} місяців"
|
54
|
+
one: 1 місяць
|
55
|
+
other: "%{count} місяцю"
|
56
|
+
x_seconds:
|
57
|
+
few: "%{count} секунди"
|
58
|
+
many: "%{count} секунд"
|
59
|
+
one: 1 секунду
|
60
|
+
other: "%{count} секунди"
|
61
|
+
x_years:
|
62
|
+
few: "%{count} року"
|
63
|
+
many: "%{count} років"
|
64
|
+
one: 1 рік
|
65
|
+
other: "%{count} року"
|
66
|
+
duration:
|
67
|
+
hours: "%{hour}h %{min}m"
|
68
|
+
less_than_10_seconds: "%{sec}s"
|
69
|
+
milliseconds: "%{ms}мс"
|
70
|
+
minutes: "%{min}м %{sec}с"
|
71
|
+
seconds: "%{sec}s"
|
72
|
+
good_job:
|
73
|
+
shared:
|
74
|
+
footer:
|
75
|
+
last_update_html: Оснаннє оновлення <time id="page-updated-at" datetime="%{time}">%{time}</time>
|
76
|
+
wording: Запам'ятай, ти теж робиш Good Job!
|
77
|
+
navbar:
|
78
|
+
cron_schedules: Cron
|
79
|
+
jobs: Задачі
|
80
|
+
live_poll: Живе Опитування
|
81
|
+
name: "GoodJob 👍"
|
82
|
+
processes: Процеси
|
83
|
+
status:
|
84
|
+
discarded: Відхилено
|
85
|
+
queued: В черзі
|
86
|
+
retried: Повторна спроба
|
87
|
+
running: Біг
|
88
|
+
scheduled: за розкладом
|
89
|
+
succeeded: вдалося
|
90
|
+
number:
|
91
|
+
format:
|
92
|
+
delimiter: " "
|
93
|
+
separator: ","
|
94
|
+
human:
|
95
|
+
decimal_units:
|
96
|
+
format: "%n%u"
|
97
|
+
units:
|
98
|
+
billion: Блн
|
99
|
+
million: Млн
|
100
|
+
quadrillion: Q
|
101
|
+
thousand: Тис
|
102
|
+
trillion: Трил
|
103
|
+
unit: ''
|
104
|
+
format:
|
105
|
+
delimiter: " "
|
106
|
+
precision: 3
|
107
|
+
separator: ","
|
data/lib/good_job/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: good_job
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.6.
|
4
|
+
version: 3.6.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ben Sheldon
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-
|
11
|
+
date: 2022-12-04 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activejob
|
@@ -395,6 +395,7 @@ files:
|
|
395
395
|
- config/locales/es.yml
|
396
396
|
- config/locales/nl.yml
|
397
397
|
- config/locales/ru.yml
|
398
|
+
- config/locales/ua.yml
|
398
399
|
- config/routes.rb
|
399
400
|
- exe/good_job
|
400
401
|
- lib/active_job/queue_adapters/good_job_adapter.rb
|