mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-04-15 15:50:09 +02:00
Merge #19023: test: Fix intermittent ETIMEDOUT on FreeBSD
fab908f18a080912a0e833f12cccc27f27662e3b test: Fix intermittent ETIMEDOUT on FreeBSD (MarcoFalke) Pull request description: Example backtrace: https://cirrus-ci.com/task/5307019047469056?command=functional_test#L1059 ACKs for top commit: laanwj: ACK fab908f18a080912a0e833f12cccc27f27662e3b Tree-SHA512: 06e383e9993e083d6da4c546dde8811ace02559ddbb1c24e307938307763b3abe630699054e7067cf4aea993c82865e259b77b4bee518666a03d26e0f81c0656
This commit is contained in:
commit
99e5e21b38
@ -219,7 +219,12 @@ class TestNode():
|
||||
raise FailedToStartError(self._node_msg(
|
||||
'bitcoind exited with status {} during initialization'.format(self.process.returncode)))
|
||||
try:
|
||||
rpc = get_rpc_proxy(rpc_url(self.datadir, self.index, self.chain, self.rpchost), self.index, timeout=self.rpc_timeout, coveragedir=self.coverage_dir)
|
||||
rpc = get_rpc_proxy(
|
||||
rpc_url(self.datadir, self.index, self.chain, self.rpchost),
|
||||
self.index,
|
||||
timeout=self.rpc_timeout // 2, # Shorter timeout to allow for one retry in case of ETIMEDOUT
|
||||
coveragedir=self.coverage_dir,
|
||||
)
|
||||
rpc.getblockcount()
|
||||
# If the call to getblockcount() succeeds then the RPC connection is up
|
||||
if self.version_is_at_least(190000):
|
||||
@ -260,7 +265,11 @@ class TestNode():
|
||||
# succeeds. Try again to properly raise the FailedToStartError
|
||||
pass
|
||||
except OSError as e:
|
||||
if e.errno != errno.ECONNREFUSED: # Port not yet open?
|
||||
if e.errno == errno.ETIMEDOUT:
|
||||
pass # Treat identical to ConnectionResetError
|
||||
elif e.errno == errno.ECONNREFUSED:
|
||||
pass # Port not yet open?
|
||||
else:
|
||||
raise # unknown OS error
|
||||
except ValueError as e: # cookie file not found and no rpcuser or rpcpassword; bitcoind is still starting
|
||||
if "No RPC credentials" not in str(e):
|
||||
|
Loading…
x
Reference in New Issue
Block a user