Revision 546a1dcf
b/src/Ganeti/HTools/Program/Harep.hs | ||
---|---|---|
277 | 277 |
|
278 | 278 |
return instData { tagsToRemove = [] } |
279 | 279 |
|
280 |
-- | Detect brokeness with an instance and suggest repair type and jobs to run. |
|
280 |
-- | Detect brokenness with an instance and suggest repair type and jobs to run.
|
|
281 | 281 |
detectBroken :: Node.List -> Instance.Instance |
282 | 282 |
-> Maybe (AutoRepairType, [OpCode]) |
283 | 283 |
detectBroken nl inst = |
... | ... | |
295 | 295 |
, opRecreateDisksInfo = RecreateDisksAll |
296 | 296 |
, opNodes = [] |
297 | 297 |
-- FIXME: there should be a better way to |
298 |
-- specify opcode paramteres than abusing
|
|
298 |
-- specify opcode parameters than abusing
|
|
299 | 299 |
-- mkNonEmpty in this way (using the fact |
300 | 300 |
-- that Maybe is used both for optional |
301 | 301 |
-- fields, and to express failure). |
... | ... | |
390 | 390 |
-- that includes the repair job IDs so that they can be checked later. |
391 | 391 |
-- One problem we run into is that the repair job immediately grabs |
392 | 392 |
-- locks for the affected instance, and the subsequent TAGS_SET job is |
393 |
-- blocked, introducing an unnecesary delay for the end-user. One |
|
393 |
-- blocked, introducing an unnecessary delay for the end-user. One
|
|
394 | 394 |
-- alternative would be not to wait for the completion of the TAGS_SET |
395 | 395 |
-- job, contrary to what commitChange normally does; but we insist on |
396 | 396 |
-- waiting for the tag to be set so as to abort in case of failure, |
Also available in: Unified diff