fix typing
This commit is contained in:
parent
ff30386051
commit
12d6074e3b
1 changed files with 5 additions and 3 deletions
|
@ -219,7 +219,7 @@ class Network:
|
||||||
await asyncio.gather(*(resolve_spv(server, port) for (server, port) in self.config['default_servers']))
|
await asyncio.gather(*(resolve_spv(server, port) for (server, port) in self.config['default_servers']))
|
||||||
return hostname_to_ip, ip_to_hostnames
|
return hostname_to_ip, ip_to_hostnames
|
||||||
|
|
||||||
async def get_n_fastest_spvs(self, timeout=3.0) -> Dict[Tuple[str, int], SPVPong]:
|
async def get_n_fastest_spvs(self, timeout=3.0) -> Dict[Tuple[str, int], Optional[SPVPong]]:
|
||||||
loop = asyncio.get_event_loop()
|
loop = asyncio.get_event_loop()
|
||||||
pong_responses = asyncio.Queue()
|
pong_responses = asyncio.Queue()
|
||||||
connection = SPVStatusClientProtocol(pong_responses)
|
connection = SPVStatusClientProtocol(pong_responses)
|
||||||
|
@ -253,14 +253,16 @@ class Network:
|
||||||
log.warning("%i spv status probes failed, retrying later. servers tried: %s",
|
log.warning("%i spv status probes failed, retrying later. servers tried: %s",
|
||||||
len(sent_ping_timestamps),
|
len(sent_ping_timestamps),
|
||||||
', '.join('/'.join(hosts) + f' ({ip})' for ip, hosts in ip_to_hostnames.items()))
|
', '.join('/'.join(hosts) + f' ({ip})' for ip, hosts in ip_to_hostnames.items()))
|
||||||
return {random.choice(list(ip_to_hostnames)): None}
|
random_server = random.choice(list(ip_to_hostnames.keys()))
|
||||||
|
host, port = random_server
|
||||||
|
log.warning("trying fallback to randomly selected spv: %s:%i", host, port)
|
||||||
|
return {(host, port): None}
|
||||||
finally:
|
finally:
|
||||||
connection.close()
|
connection.close()
|
||||||
|
|
||||||
async def connect_to_fastest(self) -> Optional[ClientSession]:
|
async def connect_to_fastest(self) -> Optional[ClientSession]:
|
||||||
fastest_spvs = await self.get_n_fastest_spvs()
|
fastest_spvs = await self.get_n_fastest_spvs()
|
||||||
for (host, port) in fastest_spvs:
|
for (host, port) in fastest_spvs:
|
||||||
|
|
||||||
client = ClientSession(network=self, server=(host, port))
|
client = ClientSession(network=self, server=(host, port))
|
||||||
try:
|
try:
|
||||||
await client.create_connection()
|
await client.create_connection()
|
||||||
|
|
Loading…
Reference in a new issue