Merge pull request #10826

2a9628b functional_tests_rpc: recreate socket for each startup probe (selsta)

ACKs: tobtoht, jpk68
This commit is contained in:
tobtoht
2026-07-15 18:20:32 +00:00
+12 -14
View File
@@ -126,21 +126,19 @@ deadline = time.monotonic() + startup_timeout
for port in ports: for port in ports:
addr = ('127.0.0.1', port) addr = ('127.0.0.1', port)
delay = 0 delay = 0
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) while True:
try: time.sleep(delay)
while True: timeout = deadline - time.monotonic()
timeout = deadline - time.monotonic() - delay if timeout <= 0:
if timeout <= 0: print('Failed to start wallet or daemon, last port checked: ' + str(port))
print('Failed to start wallet or daemon') kill()
kill() sys.exit(1)
sys.exit(1) with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as s:
time.sleep(delay)
s.settimeout(timeout) s.settimeout(timeout)
if s.connect_ex(addr) == 0: err = s.connect_ex(addr)
break if err == 0:
delay = .1 break
finally: delay = .1
s.close()
# online daemons need some time to connect to peers to be ready # online daemons need some time to connect to peers to be ready
time.sleep(2) time.sleep(2)