]>
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": { | |
53 | "type": "string" | |
54 | }, | |
55 | "union_shard_errors": { | |
56 | "description": "Union of all shard errors", | |
57 | "type": "array", | |
58 | "items": { | |
59 | "enum": [ | |
60 | "missing", | |
61 | "stat_error", | |
62 | "read_error", | |
63 | "data_digest_mismatch_oi", | |
64 | "omap_digest_mismatch_oi", | |
65 | "size_mismatch_oi", | |
66 | "ec_hash_error", | |
67 | "ec_size_error", | |
68 | "oi_attr_missing", | |
b5b8bbf5 FG |
69 | "oi_attr_corrupted", |
70 | "obj_size_oi_mismatch", | |
71 | "ss_attr_missing", | |
72 | "ss_attr_corrupted" | |
7c673cae FG |
73 | ] |
74 | }, | |
75 | "minItems": 0, | |
76 | "uniqueItems": true | |
77 | }, | |
78 | "errors": { | |
79 | "description": "Errors related to the analysis of this object", | |
80 | "type": "array", | |
81 | "items": { | |
82 | "enum": [ | |
83 | "object_info_inconsistency", | |
84 | "data_digest_mismatch", | |
85 | "omap_digest_mismatch", | |
86 | "size_mismatch", | |
87 | "attr_value_mismatch", | |
3a9019d9 FG |
88 | "attr_name_mismatch", |
89 | "snapset_inconsistency" | |
7c673cae FG |
90 | ] |
91 | }, | |
92 | "minItems": 0, | |
93 | "uniqueItems": true | |
94 | }, | |
95 | "shards": { | |
96 | "description": "All found or expected shards", | |
97 | "type": "array", | |
98 | "items": { | |
99 | "description": "Information about a particular shard of object", | |
100 | "type": "object", | |
101 | "properties": { | |
102 | "object_info": { | |
103 | "type": "string" | |
104 | }, | |
105 | "shard": { | |
106 | "type": "integer" | |
107 | }, | |
108 | "osd": { | |
109 | "type": "integer" | |
110 | }, | |
b5b8bbf5 FG |
111 | "primary": { |
112 | "type": "boolean" | |
113 | }, | |
7c673cae FG |
114 | "size": { |
115 | "type": "integer" | |
116 | }, | |
117 | "omap_digest": { | |
118 | "description": "Hex representation (e.g. 0x1abd1234)", | |
119 | "type": "string" | |
120 | }, | |
121 | "data_digest": { | |
122 | "description": "Hex representation (e.g. 0x1abd1234)", | |
123 | "type": "string" | |
124 | }, | |
125 | "errors": { | |
126 | "description": "Errors with this shard", | |
127 | "type": "array", | |
128 | "items": { | |
129 | "enum": [ | |
130 | "missing", | |
131 | "stat_error", | |
132 | "read_error", | |
133 | "data_digest_mismatch_oi", | |
134 | "omap_digest_mismatch_oi", | |
135 | "size_mismatch_oi", | |
136 | "ec_hash_error", | |
137 | "ec_size_error", | |
138 | "oi_attr_missing", | |
b5b8bbf5 FG |
139 | "oi_attr_corrupted", |
140 | "obj_size_oi_mismatch", | |
141 | "ss_attr_missing", | |
142 | "ss_attr_corrupted" | |
7c673cae FG |
143 | ] |
144 | }, | |
145 | "minItems": 0, | |
146 | "uniqueItems": true | |
147 | }, | |
148 | "attrs": { | |
149 | "description": "If any shard's attr error is set then all attrs are here", | |
150 | "type": "array", | |
151 | "items": { | |
152 | "description": "Information about a particular shard of object", | |
153 | "type": "object", | |
154 | "properties": { | |
155 | "name": { | |
156 | "type": "string" | |
157 | }, | |
158 | "value": { | |
159 | "type": "string" | |
160 | }, | |
161 | "Base64": { | |
162 | "type": "boolean" | |
163 | } | |
164 | }, | |
165 | "required": [ | |
166 | "name", | |
167 | "value", | |
168 | "Base64" | |
169 | ], | |
170 | "additionalProperties": false, | |
171 | "minItems": 1 | |
172 | } | |
173 | } | |
174 | }, | |
175 | "required": [ | |
176 | "osd", | |
b5b8bbf5 | 177 | "primary", |
7c673cae FG |
178 | "errors" |
179 | ] | |
180 | } | |
181 | } | |
182 | }, | |
183 | "required": [ | |
184 | "object", | |
185 | "union_shard_errors", | |
186 | "errors", | |
187 | "shards" | |
188 | ] | |
189 | } | |
190 | } | |
191 | }, | |
192 | "required": [ | |
193 | "epoch", | |
194 | "inconsistents" | |
195 | ] | |
196 | } |