]>
Commit | Line | Data |
---|---|---|
7c673cae FG |
1 | { |
2 | "$schema": "http://json-schema.org/draft-04/schema#", | |
3 | "type": "object", | |
4 | "properties": { | |
5 | "epoch": { | |
6 | "description": "Scrub epoch", | |
7 | "type": "integer" | |
8 | }, | |
9 | "inconsistents": { | |
10 | "type": "array", | |
11 | "items": { | |
12 | "type": "object", | |
13 | "properties": { | |
14 | "object": { | |
15 | "description": "Identify a Ceph object", | |
16 | "type": "object", | |
17 | "properties": { | |
18 | "name": { | |
19 | "type": "string" | |
20 | }, | |
21 | "nspace": { | |
22 | "type": "string" | |
23 | }, | |
24 | "locator": { | |
25 | "type": "string" | |
26 | }, | |
27 | "version": { | |
28 | "type": "integer", | |
29 | "minimum": 0 | |
30 | }, | |
31 | "snap": { | |
32 | "oneOf": [ | |
33 | { | |
34 | "type": "string", | |
35 | "enum": [ "head", "snapdir" ] | |
36 | }, | |
37 | { | |
38 | "type": "integer", | |
39 | "minimum": 0 | |
40 | } | |
41 | ] | |
42 | } | |
43 | }, | |
44 | "required": [ | |
45 | "name", | |
46 | "nspace", | |
47 | "locator", | |
48 | "version", | |
49 | "snap" | |
50 | ] | |
51 | }, | |
52 | "selected_object_info": { | |
94b18763 FG |
53 | "type": "object", |
54 | "description": "Selected object information", | |
55 | "additionalProperties": true | |
7c673cae FG |
56 | }, |
57 | "union_shard_errors": { | |
58 | "description": "Union of all shard errors", | |
59 | "type": "array", | |
60 | "items": { | |
61 | "enum": [ | |
62 | "missing", | |
63 | "stat_error", | |
64 | "read_error", | |
94b18763 FG |
65 | "data_digest_mismatch_info", |
66 | "omap_digest_mismatch_info", | |
67 | "size_mismatch_info", | |
7c673cae FG |
68 | "ec_hash_error", |
69 | "ec_size_error", | |
94b18763 FG |
70 | "info_missing", |
71 | "info_corrupted", | |
72 | "obj_size_info_mismatch", | |
73 | "snapset_missing", | |
74 | "snapset_corrupted", | |
75 | "hinfo_missing", | |
76 | "hinfo_corrupted" | |
7c673cae FG |
77 | ] |
78 | }, | |
79 | "minItems": 0, | |
80 | "uniqueItems": true | |
81 | }, | |
82 | "errors": { | |
83 | "description": "Errors related to the analysis of this object", | |
84 | "type": "array", | |
85 | "items": { | |
86 | "enum": [ | |
87 | "object_info_inconsistency", | |
88 | "data_digest_mismatch", | |
89 | "omap_digest_mismatch", | |
90 | "size_mismatch", | |
91 | "attr_value_mismatch", | |
3a9019d9 | 92 | "attr_name_mismatch", |
94b18763 | 93 | "snapset_inconsistency", |
eafe8130 TL |
94 | "hinfo_inconsistency", |
95 | "size_too_large" | |
7c673cae FG |
96 | ] |
97 | }, | |
98 | "minItems": 0, | |
99 | "uniqueItems": true | |
100 | }, | |
101 | "shards": { | |
102 | "description": "All found or expected shards", | |
103 | "type": "array", | |
104 | "items": { | |
105 | "description": "Information about a particular shard of object", | |
106 | "type": "object", | |
107 | "properties": { | |
108 | "object_info": { | |
94b18763 FG |
109 | "oneOf": [ |
110 | { | |
111 | "type": "string" | |
112 | }, | |
113 | { | |
114 | "type": "object", | |
115 | "description": "Object information", | |
116 | "additionalProperties": true | |
117 | } | |
118 | ] | |
119 | }, | |
120 | "snapset": { | |
121 | "oneOf": [ | |
122 | { | |
123 | "type": "string" | |
124 | }, | |
125 | { | |
126 | "type": "object", | |
127 | "description": "Snap set information", | |
128 | "additionalProperties": true | |
129 | } | |
130 | ] | |
131 | }, | |
132 | "hashinfo": { | |
133 | "oneOf": [ | |
134 | { | |
135 | "type": "string" | |
136 | }, | |
137 | { | |
138 | "type": "object", | |
139 | "description": "Erasure code hash information", | |
140 | "additionalProperties": true | |
141 | } | |
142 | ] | |
7c673cae FG |
143 | }, |
144 | "shard": { | |
145 | "type": "integer" | |
146 | }, | |
147 | "osd": { | |
148 | "type": "integer" | |
149 | }, | |
b5b8bbf5 FG |
150 | "primary": { |
151 | "type": "boolean" | |
152 | }, | |
7c673cae FG |
153 | "size": { |
154 | "type": "integer" | |
155 | }, | |
156 | "omap_digest": { | |
157 | "description": "Hex representation (e.g. 0x1abd1234)", | |
158 | "type": "string" | |
159 | }, | |
160 | "data_digest": { | |
161 | "description": "Hex representation (e.g. 0x1abd1234)", | |
162 | "type": "string" | |
163 | }, | |
164 | "errors": { | |
165 | "description": "Errors with this shard", | |
166 | "type": "array", | |
167 | "items": { | |
168 | "enum": [ | |
169 | "missing", | |
170 | "stat_error", | |
171 | "read_error", | |
94b18763 FG |
172 | "data_digest_mismatch_info", |
173 | "omap_digest_mismatch_info", | |
174 | "size_mismatch_info", | |
7c673cae FG |
175 | "ec_hash_error", |
176 | "ec_size_error", | |
94b18763 FG |
177 | "info_missing", |
178 | "info_corrupted", | |
179 | "obj_size_info_mismatch", | |
180 | "snapset_missing", | |
181 | "snapset_corrupted", | |
182 | "hinfo_missing", | |
183 | "hinfo_corrupted" | |
7c673cae FG |
184 | ] |
185 | }, | |
186 | "minItems": 0, | |
187 | "uniqueItems": true | |
188 | }, | |
189 | "attrs": { | |
190 | "description": "If any shard's attr error is set then all attrs are here", | |
191 | "type": "array", | |
192 | "items": { | |
193 | "description": "Information about a particular shard of object", | |
194 | "type": "object", | |
195 | "properties": { | |
196 | "name": { | |
197 | "type": "string" | |
198 | }, | |
199 | "value": { | |
200 | "type": "string" | |
201 | }, | |
202 | "Base64": { | |
203 | "type": "boolean" | |
204 | } | |
205 | }, | |
206 | "required": [ | |
207 | "name", | |
208 | "value", | |
209 | "Base64" | |
210 | ], | |
94b18763 | 211 | "additionalProperties": false |
7c673cae FG |
212 | } |
213 | } | |
214 | }, | |
94b18763 | 215 | "additionalProperties": false, |
7c673cae FG |
216 | "required": [ |
217 | "osd", | |
b5b8bbf5 | 218 | "primary", |
7c673cae FG |
219 | "errors" |
220 | ] | |
221 | } | |
222 | } | |
223 | }, | |
224 | "required": [ | |
225 | "object", | |
226 | "union_shard_errors", | |
227 | "errors", | |
228 | "shards" | |
229 | ] | |
230 | } | |
231 | } | |
232 | }, | |
233 | "required": [ | |
234 | "epoch", | |
235 | "inconsistents" | |
236 | ] | |
237 | } |