diff options
author | mregrock <mregrock@ydb.tech> | 2025-06-02 16:56:34 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-06-02 13:56:34 +0000 |
commit | 53e9f5aadbe3a7800b8ae7cd3a8f62fb855de0b1 (patch) | |
tree | a893a0e389300dfaad9b0d1fe62a5e34ed9c4aa1 | |
parent | 4c319d97d5c8bec52ca003faa806780df03d3e62 (diff) | |
download | ydb-53e9f5aadbe3a7800b8ae7cd3a8f62fb855de0b1.tar.gz |
Add timeout for bootstrap in kikimr_runner.py (#19095)
-rw-r--r-- | ydb/tests/library/harness/kikimr_runner.py | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/ydb/tests/library/harness/kikimr_runner.py b/ydb/tests/library/harness/kikimr_runner.py index 90e65d98421..a201e8cf1fb 100644 --- a/ydb/tests/library/harness/kikimr_runner.py +++ b/ydb/tests/library/harness/kikimr_runner.py @@ -429,6 +429,19 @@ class KiKiMR(kikimr_cluster_interface.KiKiMRClusterInterface): for _ in self.__configurator.all_node_ids(): self.__register_node() + def _bootstrap_cluster(self, self_assembly_uuid="test-cluster", timeout=30, interval=2): + start_time = time.time() + last_exception = None + while time.time() - start_time < timeout: + try: + result = self.config_client.bootstrap_cluster(self_assembly_uuid=self_assembly_uuid) + logger.info("Successfully bootstrapped cluster") + return result + except Exception as e: + last_exception = e + time.sleep(interval) + raise last_exception + def __run(self): self.prepare() @@ -436,7 +449,7 @@ class KiKiMR(kikimr_cluster_interface.KiKiMRClusterInterface): self.__run_node(node_id) if self.__configurator.use_self_management: - self.config_client.bootstrap_cluster(self_assembly_uuid="test-cluster") + self._bootstrap_cluster(self_assembly_uuid="test-cluster") bs_needed = ('blob_storage_config' in self.__configurator.yaml_config) or self.__configurator.use_self_management |