diff --git a/edb/testbase/server.py b/edb/testbase/server.py index c563684a284..354ca9abc99 100644 --- a/edb/testbase/server.py +++ b/edb/testbase/server.py @@ -3002,23 +3002,10 @@ def get_cases_by_shard(cases, selected_shard, total_shards, verbosity, stats): return _merge_results(cases) -def find_available_port(max_value=None) -> int: - if max_value is None: - with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as sock: - sock.bind(("localhost", 0)) - return sock.getsockname()[1] - elif max_value > 1024: - port = max_value - while port > 1024: - try: - with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as sock: - sock.bind(("localhost", port)) - return port - except IOError: - port -= 1 - raise RuntimeError("cannot find an available port") - else: - raise ValueError("max_value must be greater than 1024") +def find_available_port() -> int: + with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as sock: + sock.bind(("localhost", 0)) + return sock.getsockname()[1] def _needs_factoring(weakly): diff --git a/tests/test_server_config.py b/tests/test_server_config.py index f59660f8fb9..96558d9016f 100644 --- a/tests/test_server_config.py +++ b/tests/test_server_config.py @@ -2366,7 +2366,7 @@ async def test_server_config_env_03(self): "cannot use CONFIGURE INSTANCE in multi-tenant mode", ) async def test_server_config_default(self): - p1 = tb.find_available_port(max_value=50000) + p1 = tb.find_available_port() async with tb.start_edgedb_server( extra_args=["--port", str(p1)] ) as sd: @@ -2378,7 +2378,7 @@ async def test_server_config_default(self): """), p1, ) - p2 = tb.find_available_port(p1 - 1) + p2 = tb.find_available_port() await conn.execute(f"""\ configure instance set listen_port := {p2} """)