diff --git a/simplyblock_core/test/test_utils.py b/simplyblock_core/test/test_utils.py index 514ba0bbe..af8be2345 100644 --- a/simplyblock_core/test/test_utils.py +++ b/simplyblock_core/test/test_utils.py @@ -1,9 +1,11 @@ import uuid from typing import ContextManager +from unittest.mock import patch import pytest from simplyblock_core import utils, storage_node_ops +from simplyblock_core.db_controller import DBController from simplyblock_core.models.nvme_device import JMDevice, RemoteJMDevice from simplyblock_core.models.storage_node import StorageNode from simplyblock_core.utils import helpers, parse_thread_siblings_list @@ -152,8 +154,8 @@ def test_parse_thread_siblings_list(input, expected): - -def test_get_node_jm_names(): +@patch.object(DBController, 'get_jm_device_by_id') +def test_get_node_jm_names(db_controller_get_jm_device_by_id): node_1_jm = JMDevice() node_1_jm.uuid = "node_1_jm_id" @@ -171,6 +173,13 @@ def test_get_node_jm_names(): node_4_jm.uuid = "node_4_jm_id" node_4_jm.jm_bdev = "node_4_jm" + def get_jm_device_by_id(jm_id): + for jm in [node_1_jm, node_2_jm, node_3_jm, node_4_jm]: + if jm.uuid == jm_id: + return jm + + db_controller_get_jm_device_by_id.side_effect = get_jm_device_by_id + node_1 = StorageNode() node_1.uuid = str(uuid.uuid4()) node_1.enable_ha_jm = True diff --git a/simplyblock_core/utils/__init__.py b/simplyblock_core/utils/__init__.py index d43513173..0a8b49b75 100644 --- a/simplyblock_core/utils/__init__.py +++ b/simplyblock_core/utils/__init__.py @@ -473,15 +473,15 @@ def reserve_n(count): vcpus = reserve_n(alceml_count) assigned["alceml_cpu_cores"] = vcpus dp = int(len(remaining) / 2) - if 12 > dp >= 8: - poller_n = len(remaining) - 8 - vcpus = reserve_n(8) + if 17 > dp >= 12: + poller_n = len(remaining) - 12 + vcpus = reserve_n(12) assigned["distrib_cpu_cores"] = vcpus vcpus = reserve_n(poller_n) assigned["poller_cpu_cores"] = vcpus - elif dp >= 12: - poller_n = len(remaining) - 16 - vcpus = reserve_n(16) + elif dp >= 17: + poller_n = len(remaining) - 24 + vcpus = reserve_n(24) assigned["distrib_cpu_cores"] = vcpus vcpus = reserve_n(poller_n) assigned["poller_cpu_cores"] = vcpus @@ -1544,10 +1544,10 @@ def regenerate_config(new_config, old_config, force=False): number_of_distribs = 2 number_of_distribs_cores = len(old_config["nodes"][i]["distribution"]["distrib_cpu_cores"]) number_of_poller_cores = len(old_config["nodes"][i]["distribution"]["poller_cpu_cores"]) - if 8 >= number_of_distribs_cores > 2: + if 12 >= number_of_distribs_cores > 2: number_of_distribs = number_of_distribs_cores else: - number_of_distribs = 8 + number_of_distribs = 12 old_config["nodes"][i]["number_of_distribs"] = number_of_distribs old_config["nodes"][i]["ssd_pcis"] = new_config["nodes"][i]["ssd_pcis"] old_config["nodes"][i]["nic_ports"] = new_config["nodes"][i]["nic_ports"] diff --git a/simplyblock_web/api/internal/storage_node/docker.py b/simplyblock_web/api/internal/storage_node/docker.py index af74a76b8..0a384cedb 100644 --- a/simplyblock_web/api/internal/storage_node/docker.py +++ b/simplyblock_web/api/internal/storage_node/docker.py @@ -4,7 +4,6 @@ import math import os from pathlib import Path -import subprocess import time from typing import List, Optional, Union