fix: dispersal to remote host

This commit is contained in:
Roman 2025-03-06 01:57:21 +00:00
parent e541f3fc1c
commit 7c4e0a64ec
No known key found for this signature in database
GPG Key ID: BB3828275C58EFF1
4 changed files with 19 additions and 4 deletions

View File

@ -122,3 +122,9 @@ class NomosCli:
def name(self):
return self._container_name
def send_dispersal_request(self, data):
return self._api.send_dispersal_request(data)
def send_get_data_range_request(self, data):
return self._api.send_get_range(data)

View File

@ -129,6 +129,12 @@ class NomosNode:
def api_port(self):
return self._tcp_port
def api_port_internal(self):
for internal_port, external_port in self._port_map.items():
if str(external_port).replace("/tcp", "") == self._tcp_port:
return internal_port.replace("/tcp", "")
return None
def check_nomos_log_errors(self, whitelist=None):
keywords = LOG_ERROR_KEYWORDS

View File

@ -47,7 +47,7 @@ class StepsDataAvailability(StepsCommon):
@allure.step
def disperse_data(self, data, app_id, index, client_node=None, timeout_duration=65, utf8=True, padding=True):
@retry(stop=stop_after_delay(timeout_duration), wait=wait_fixed(1), reraise=True)
@retry(stop=stop_after_delay(timeout_duration), wait=wait_fixed(0.1), reraise=True)
def disperse(my_self=self):
response = []
request = prepare_dispersal_request(data, app_id, index, utf8=utf8, padding=padding)
@ -57,7 +57,7 @@ class StepsDataAvailability(StepsCommon):
if client_node is None:
response = executor.send_dispersal_request(request)
else:
response = client_node.set_rest_api(executor.name(), executor.api_port())
client_node.set_rest_api(executor.name(), executor.api_port_internal())
response = client_node.send_dispersal_request(request)
except Exception as ex:
assert "Bad Request" in str(ex) or "Internal Server Error" in str(ex)
@ -71,7 +71,7 @@ class StepsDataAvailability(StepsCommon):
@allure.step
def get_data_range(self, node, app_id, start, end, timeout_duration=45):
@retry(stop=stop_after_delay(timeout_duration), wait=wait_fixed(1), reraise=True)
@retry(stop=stop_after_delay(timeout_duration), wait=wait_fixed(0.1), reraise=True)
def get_range():
response = []
query = prepare_get_range_request(app_id, start, end)

View File

@ -128,13 +128,16 @@ class TestHighLoadDos(StepsDataAvailability):
delay(0.01)
try:
response = self.disperse_data(DATA_TO_DISPERSE[6], to_app_id(1), to_index(0), client_node=self.client_nodes[0], timeout_duration=0)
logger.debug(f"RESPONSE {response}")
if response.status_code == 200:
successful_dispersals += 1
else:
unsuccessful_dispersals += 1
except Exception:
except Exception as ex:
logger.debug(f"EXCEPTION {ex}")
unsuccessful_dispersals += 1
delay(3600)
# try:
# self.get_data_range(self.node2, to_app_id(1), to_index(0), to_index(5), timeout_duration=0)
# successful_downloads += 1