Disable parent channel append on get_peer_by_name to_scan

one_ring_to_rule_them_all
Guillermo Rodriguez 2025-04-13 14:06:03 -03:00
parent 4ca1aaeaeb
commit 06103d1f44
No known key found for this signature in database
GPG Key ID: 002CC5F1E6BDA53E
1 changed files with 8 additions and 3 deletions

View File

@ -121,9 +121,14 @@ def get_peer_by_name(
actor: Actor = current_actor() actor: Actor = current_actor()
server: IPCServer = actor.ipc_server server: IPCServer = actor.ipc_server
to_scan: dict[tuple, list[Channel]] = server._peers.copy() to_scan: dict[tuple, list[Channel]] = server._peers.copy()
pchan: Channel|None = actor._parent_chan
if pchan: # TODO: is this ever needed? creates a duplicate channel on actor._peers
to_scan[pchan.uid].append(pchan) # when multiple find_actor calls are made to same actor from a single ctx
# which causes actor exit to hang waiting forever on
# `actor._no_more_peers.wait()` in `_runtime.async_main`
# pchan: Channel|None = actor._parent_chan
# if pchan:
# to_scan[pchan.uid].append(pchan)
for aid, chans in to_scan.items(): for aid, chans in to_scan.items():
_, peer_name = aid _, peer_name = aid