Replace flatten_tree with extract_tree_levels
This commit is contained in:
+12
-17
@@ -1112,27 +1112,23 @@ class Mon
|
||||
filter_osds_by_tags(orig_tree, flat_tree, tags)
|
||||
{
|
||||
if (!tags)
|
||||
{
|
||||
return;
|
||||
}
|
||||
return 1;
|
||||
for (const tag of (tags instanceof Array ? tags : [ tags ]))
|
||||
{
|
||||
for (const host in flat_tree)
|
||||
for (const item in flat_tree)
|
||||
{
|
||||
let found = 0;
|
||||
for (const osd in flat_tree[host])
|
||||
if (flat_tree[item] instanceof Object)
|
||||
{
|
||||
if (!orig_tree[osd].tags || !orig_tree[osd].tags[tag])
|
||||
delete flat_tree[host][osd];
|
||||
else
|
||||
found++;
|
||||
}
|
||||
if (!found)
|
||||
{
|
||||
delete flat_tree[host];
|
||||
if (!filter_osds_by_tags(orig_tree, flat_tree[item], tags))
|
||||
delete flat_tree[item];
|
||||
}
|
||||
else if (!orig_tree[item].tags || !orig_tree[item].tags[tag])
|
||||
delete flat_tree[item];
|
||||
}
|
||||
}
|
||||
for (const item in flat_tree)
|
||||
return 1;
|
||||
return 0;
|
||||
}
|
||||
|
||||
get_affinity_osds(pool_cfg, up_osds, osd_tree)
|
||||
@@ -1191,9 +1187,8 @@ class Mon
|
||||
{
|
||||
continue;
|
||||
}
|
||||
let pool_tree = osd_tree[pool_cfg.root_node || ''];
|
||||
pool_tree = pool_tree ? pool_tree.children : [];
|
||||
pool_tree = LPOptimizer.flatten_tree(pool_tree, levels, pool_cfg.failure_domain, 'osd');
|
||||
let pool_tree = osd_tree[pool_cfg.root_node || ''] || {};
|
||||
pool_tree = LPOptimizer.extract_tree_levels(pool_tree, [ pool_cfg.failure_domain, 'osd' ], levels);
|
||||
this.filter_osds_by_tags(osd_tree, pool_tree, pool_cfg.osd_tags);
|
||||
// These are for the purpose of building history.osd_sets
|
||||
const real_prev_pgs = [];
|
||||
|
||||
Reference in New Issue
Block a user