Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

OSError: [Errno 9] Bad file descriptor in cluster test #345

Open
1 of 2 tasks
goodboy opened this issue Dec 12, 2022 · 0 comments · May be fixed by #347
Open
1 of 2 tasks

OSError: [Errno 9] Bad file descriptor in cluster test #345

goodboy opened this issue Dec 12, 2022 · 0 comments · May be fixed by #347
Labels
bug Something isn't working

Comments

@goodboy
Copy link
Owner

goodboy commented Dec 12, 2022

Due to some change in the downstream history introduced in #343.

Thanks to @guilledk who also discovered this issue in practice during dev of a client project.

Not entirely sure which commit(s) are causing it yet but the error looks as follows (pulled out from #344):

ERROR    tractor._supervise:_supervise.py:385 Nursery for ('root', '798cdc51-2c9e-4041-a162-6c4d0334feed') errored with
 + Exception Group Traceback (most recent call last):
 |   File "/home/goodboy/repos/tractor/tractor/_supervise.py", line 339, in _open_and_supervise_one_cancels_all_nursery
 |     yield anursery
 |   File "/home/goodboy/repos/tractor/tractor/_supervise.py", line 499, in open_nursery
 |     yield anursery
 |   File "/home/goodboy/repos/tractor/tractor/_clustering.py", line 58, in open_actor_cluster
 |     async with trio.open_nursery() as n:
 |   File "/home/goodboy/.virtualenvs/310tractor/lib/python3.10/site-packages/trio/_core/_run.py", line 850, in __aexit__
 |     raise combined_error_from_nursery
 | trio.NonBaseMultiError: OSError(9, 'Bad file descriptor'), OSError(9, 'Bad file descriptor'), OSError(9, 'Bad file descriptor'), OSError(9, 'Bad file descriptor')
 +-+---------------- 1 ----------------
   | Traceback (most recent call last):
   |   File "/home/goodboy/repos/tractor/tractor/_clustering.py", line 63, in _start
   |     portals[name] = await an.start_actor(
   |   File "/home/goodboy/repos/tractor/tractor/_supervise.py", line 155, in start_actor
   |     parent_addr = self._actor.accept_addr
   |   File "/home/goodboy/repos/tractor/tractor/_runtime.py", line 1175, in accept_addr
   |     return self._listeners[0].socket.getsockname()  # type: ignore
   | OSError: [Errno 9] Bad file descriptor
   +---------------- 2 ----------------
   | Traceback (most recent call last):
   |   File "/home/goodboy/repos/tractor/tractor/_clustering.py", line 63, in _start
   |     portals[name] = await an.start_actor(
   |   File "/home/goodboy/repos/tractor/tractor/_supervise.py", line 155, in start_actor
   |     parent_addr = self._actor.accept_addr
   |   File "/home/goodboy/repos/tractor/tractor/_runtime.py", line 1175, in accept_addr
   |     return self._listeners[0].socket.getsockname()  # type: ignore
   | OSError: [Errno 9] Bad file descriptor
   +---------------- 3 ----------------
   | Traceback (most recent call last):
   |   File "/home/goodboy/repos/tractor/tractor/_clustering.py", line 63, in _start
   |     portals[name] = await an.start_actor(
   |   File "/home/goodboy/repos/tractor/tractor/_supervise.py", line 155, in start_actor
   |     parent_addr = self._actor.accept_addr
   |   File "/home/goodboy/repos/tractor/tractor/_runtime.py", line 1175, in accept_addr
   |     return self._listeners[0].socket.getsockname()  # type: ignore
   | OSError: [Errno 9] Bad file descriptor
   +---------------- 4 ----------------
   | Traceback (most recent call last):
   |   File "/home/goodboy/repos/tractor/tractor/_clustering.py", line 63, in _start
   |     portals[name] = await an.start_actor(
   |   File "/home/goodboy/repos/tractor/tractor/_supervise.py", line 155, in start_actor
   |     parent_addr = self._actor.accept_addr
   |   File "/home/goodboy/repos/tractor/tractor/_runtime.py", line 1175, in accept_addr
   |     return self._listeners[0].socket.getsockname()  # type: ignore
   | OSError: [Errno 9] Bad file descriptor
   +------------------------------------

TODO:

@goodboy goodboy added the bug Something isn't working label Dec 12, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant