Revision a37549ea
b/src/Ganeti/HTools/Cluster.hs | ||
---|---|---|
1349 | 1349 |
. flip (tryAlloc nl' il') allocnodes) |
1350 | 1350 |
newinst |
1351 | 1351 |
bigSteps = filter isJust . map suffShrink . reverse $ sortedErrs |
1352 |
progress (Ok (_, _, _, newil', _)) (Ok (_, _, _, newil, _)) = |
|
1353 |
length newil' > length newil |
|
1354 |
progress _ _ = False |
|
1352 | 1355 |
in if stop then newsol else |
1353 |
case bigSteps of |
|
1354 |
Just newinst':_ -> tieredAlloc nl' il' newlimit |
|
1355 |
newinst' allocnodes ixes' cstats' |
|
1356 |
_ -> case Instance.shrinkByType newinst . last $ sortedErrs of |
|
1357 |
Bad _ -> newsol |
|
1358 |
Ok newinst' -> tieredAlloc nl' il' newlimit |
|
1359 |
newinst' allocnodes ixes' cstats' |
|
1356 |
let newsol' = case Instance.shrinkByType newinst . last |
|
1357 |
$ sortedErrs of |
|
1358 |
Bad _ -> newsol |
|
1359 |
Ok newinst' -> tieredAlloc nl' il' newlimit |
|
1360 |
newinst' allocnodes ixes' cstats' |
|
1361 |
in if progress newsol' newsol then newsol' else |
|
1362 |
case bigSteps of |
|
1363 |
Just newinst':_ -> tieredAlloc nl' il' newlimit |
|
1364 |
newinst' allocnodes ixes' cstats' |
|
1365 |
_ -> newsol |
|
1360 | 1366 |
|
1361 | 1367 |
-- * Formatting functions |
1362 | 1368 |
|
Also available in: Unified diff