temporalio / temporalio/sdk-python
[Bug] Python 3.13.3 on macOS Intel hangs post-test
Open
Nobody has claimed this yet.
bug
- Dominant language
- Python
- Stars
- 1.2k
- Forks
- 241
- Avg merge
- 3d 21h
- Merged PRs (30d)
- 55
Description
Describe the bug
On latest Python (3.13.3 as of this writing), macOS Intel sometimes hangs post pytest run in our CI, with things like:
2025-04-17T16:21:46.354310Z WARN temporal_client::retry: gRPC call poll_nexus_task_queue retried 6 times error=Status { code: Unavailable, message: "tcp connect error: Connection refused (os error 61)", source: Some(tonic::transport::Error(Transport, ConnectError(ConnectError("tcp connect error", Os { code: 61, kind: ConnectionRefused, message: "Connection refused" })))) }
2025-04-17T16:21:46.373735Z WARN temporal_client::retry: gRPC call poll_workflow_task_queue retried 6 times error=Status { code: Unavailable, message: "tcp connect error: Connection refused (os error 61)", source: Some(tonic::transport::Error(Transport, ConnectError(ConnectError("tcp connect error", Os { code: 61, kind: ConnectionRefused, message: "Connection refused" })))) }
and
2025-04-17T22:02:54.232127Z WARN temporal_client::retry: gRPC call get_workflow_execution_history retried 5 times error=Status { code: Unavailable, message: "tcp connect error: Connection refused (os error 61)", source: Some(tonic::transport::Error(Transport, ConnectError(ConnectError("tcp connect error", Os { code: 61, kind: ConnectionRefused, message: "Connection refused" })))) }
2025-04-17T22:02:55.213783Z WARN temporal_client::retry: gRPC call get_workflow_execution_history retried 6 times error=Status { code: Unavailable, message: "tcp connect error: Connection refused (os error 61)", source: Some(tonic::transport::Error(Transport, ConnectError(ConnectError("tcp connect error", Os { code: 61, kind: ConnectionRefused, message: "Connection refused" })))) }
This may be some worker in some test unable to shutdown properly in this specific situation.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reproducing the post-pytest hang in CI with Python 3.13.3 on Intel macOS, focusing on the worker shutdown path and the gRPC retry warnings. Trace which test or worker remains active after pytest finishes; done means the test run exits cleanly without the hang or repeated connection-refused retries.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- grpc, macos, python
- Domain
- backend, ci-cd, testing
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 30/100