in src/hpc/autoscale/node/nodemanager.py [0:0]
def _remove_node_internally(self, node: Node) -> None:
by_bucket_id_and_pg = partition_single(
self.__node_buckets, lambda b: (b.bucket_id, b.placement_group)
)
key = (node.bucket_id, node.placement_group)
if key not in by_bucket_id_and_pg:
logging.warning(
"Unknown bucketid/placement_group??? %s not in %s",
key,
by_bucket_id_and_pg,
)
return
bucket = by_bucket_id_and_pg[key]
nodes_list = bucket.nodes
if node not in nodes_list:
logging.warning(
(
"Somehow {} is not being tracked by bucket {}. "
+ "Did you try to shutdown/terminate/delete a node twice?"
).format(node, bucket)
)
return
bucket.nodes.remove(node)