maintenance_tasks 2.16.0 → 2.17.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: cd230e758c366ce730cdfdb91a7ba7ae433582d69f01c78c828f22ae756401b7
|
|
4
|
+
data.tar.gz: fb3dd9d633b907e3ceaae6c7db7ed84c75b033f1832bd175f143fb590fcd0379
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 850d1e302af870bbbd8a83c5a6db4b2080661ddd29d5a56e1f0e77e54e8cab983d56fe43fab39a14cf4031083e1df2345dad4901c035d689e744246d838a98db
|
|
7
|
+
data.tar.gz: d7bcab900521437f9e2ccf921f4213c28d688bc484a39920f05236184dc0072a5d929fcc81940e708ffeda7ef482e7787d96d52cf495b3f19568fd0058f6c328
|
data/README.md
CHANGED
|
@@ -1047,6 +1047,8 @@ Reports to the error reporter will contain the following data:
|
|
|
1047
1047
|
* `run_id`: The id of the errored Task run
|
|
1048
1048
|
* `tick_count`: The tick count at the time of the error
|
|
1049
1049
|
* `errored_element`: The element, if any, that was being processed when the
|
|
1050
|
+
Task errored. Active Record elements are reported as a hash with
|
|
1051
|
+
`class_name` and `id` keys.
|
|
1050
1052
|
* `source`: This will be `maintenance-tasks`
|
|
1051
1053
|
* `handled`: the value of `MaintenanceTasks.report_errors_as_handled` (default `true`, see below)
|
|
1052
1054
|
|
|
@@ -42,6 +42,15 @@ module MaintenanceTasks
|
|
|
42
42
|
@run.cursor
|
|
43
43
|
end
|
|
44
44
|
|
|
45
|
+
def serialized_errored_element(errored_element)
|
|
46
|
+
return errored_element unless errored_element.is_a?(ActiveRecord::Base)
|
|
47
|
+
|
|
48
|
+
{
|
|
49
|
+
class_name: errored_element.class.name,
|
|
50
|
+
id: errored_element.id,
|
|
51
|
+
}
|
|
52
|
+
end
|
|
53
|
+
|
|
45
54
|
def build_enumerator(_run, cursor:)
|
|
46
55
|
cursor ||= deserialized_run_cursor
|
|
47
56
|
self.cursor_position = cursor
|
|
@@ -206,10 +215,15 @@ module MaintenanceTasks
|
|
|
206
215
|
errored_element = task_context.delete(:errored_element)
|
|
207
216
|
MaintenanceTasks.error_handler.call(error, task_context.except(:run_id, :tick_count), errored_element)
|
|
208
217
|
else
|
|
218
|
+
report_context = task_context.dup
|
|
219
|
+
if report_context.key?(:errored_element)
|
|
220
|
+
report_context[:errored_element] = serialized_errored_element(report_context[:errored_element])
|
|
221
|
+
end
|
|
222
|
+
|
|
209
223
|
Rails.error.report(
|
|
210
224
|
error,
|
|
211
225
|
handled: MaintenanceTasks.report_errors_as_handled,
|
|
212
|
-
context:
|
|
226
|
+
context: report_context,
|
|
213
227
|
source: "maintenance-tasks",
|
|
214
228
|
)
|
|
215
229
|
end
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
-
class AddCursorIsJsonFlagToRuns < ActiveRecord::Migration[7.
|
|
3
|
+
class AddCursorIsJsonFlagToRuns < ActiveRecord::Migration[7.2]
|
|
4
4
|
def change
|
|
5
5
|
add_column(:maintenance_tasks_runs, :cursor_is_json, :boolean, default: false, null: false)
|
|
6
6
|
end
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: maintenance_tasks
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 2.
|
|
4
|
+
version: 2.17.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Shopify Engineering
|
|
@@ -15,42 +15,42 @@ dependencies:
|
|
|
15
15
|
requirements:
|
|
16
16
|
- - ">="
|
|
17
17
|
- !ruby/object:Gem::Version
|
|
18
|
-
version: '7.
|
|
18
|
+
version: '7.2'
|
|
19
19
|
type: :runtime
|
|
20
20
|
prerelease: false
|
|
21
21
|
version_requirements: !ruby/object:Gem::Requirement
|
|
22
22
|
requirements:
|
|
23
23
|
- - ">="
|
|
24
24
|
- !ruby/object:Gem::Version
|
|
25
|
-
version: '7.
|
|
25
|
+
version: '7.2'
|
|
26
26
|
- !ruby/object:Gem::Dependency
|
|
27
27
|
name: activejob
|
|
28
28
|
requirement: !ruby/object:Gem::Requirement
|
|
29
29
|
requirements:
|
|
30
30
|
- - ">="
|
|
31
31
|
- !ruby/object:Gem::Version
|
|
32
|
-
version: '7.
|
|
32
|
+
version: '7.2'
|
|
33
33
|
type: :runtime
|
|
34
34
|
prerelease: false
|
|
35
35
|
version_requirements: !ruby/object:Gem::Requirement
|
|
36
36
|
requirements:
|
|
37
37
|
- - ">="
|
|
38
38
|
- !ruby/object:Gem::Version
|
|
39
|
-
version: '7.
|
|
39
|
+
version: '7.2'
|
|
40
40
|
- !ruby/object:Gem::Dependency
|
|
41
41
|
name: activerecord
|
|
42
42
|
requirement: !ruby/object:Gem::Requirement
|
|
43
43
|
requirements:
|
|
44
44
|
- - ">="
|
|
45
45
|
- !ruby/object:Gem::Version
|
|
46
|
-
version: '7.
|
|
46
|
+
version: '7.2'
|
|
47
47
|
type: :runtime
|
|
48
48
|
prerelease: false
|
|
49
49
|
version_requirements: !ruby/object:Gem::Requirement
|
|
50
50
|
requirements:
|
|
51
51
|
- - ">="
|
|
52
52
|
- !ruby/object:Gem::Version
|
|
53
|
-
version: '7.
|
|
53
|
+
version: '7.2'
|
|
54
54
|
- !ruby/object:Gem::Dependency
|
|
55
55
|
name: csv
|
|
56
56
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -85,14 +85,14 @@ dependencies:
|
|
|
85
85
|
requirements:
|
|
86
86
|
- - ">="
|
|
87
87
|
- !ruby/object:Gem::Version
|
|
88
|
-
version: '7.
|
|
88
|
+
version: '7.2'
|
|
89
89
|
type: :runtime
|
|
90
90
|
prerelease: false
|
|
91
91
|
version_requirements: !ruby/object:Gem::Requirement
|
|
92
92
|
requirements:
|
|
93
93
|
- - ">="
|
|
94
94
|
- !ruby/object:Gem::Version
|
|
95
|
-
version: '7.
|
|
95
|
+
version: '7.2'
|
|
96
96
|
- !ruby/object:Gem::Dependency
|
|
97
97
|
name: zeitwerk
|
|
98
98
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -184,7 +184,7 @@ homepage: https://github.com/Shopify/maintenance_tasks
|
|
|
184
184
|
licenses:
|
|
185
185
|
- MIT
|
|
186
186
|
metadata:
|
|
187
|
-
source_code_uri: https://github.com/Shopify/maintenance_tasks/tree/v2.
|
|
187
|
+
source_code_uri: https://github.com/Shopify/maintenance_tasks/tree/v2.17.0
|
|
188
188
|
allowed_push_host: https://rubygems.org
|
|
189
189
|
rdoc_options: []
|
|
190
190
|
require_paths:
|
|
@@ -200,7 +200,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
200
200
|
- !ruby/object:Gem::Version
|
|
201
201
|
version: '0'
|
|
202
202
|
requirements: []
|
|
203
|
-
rubygems_version: 4.0.
|
|
203
|
+
rubygems_version: 4.0.12
|
|
204
204
|
specification_version: 4
|
|
205
205
|
summary: A Rails engine for queuing and managing maintenance tasks
|
|
206
206
|
test_files: []
|