Description
Crash report
What happened?
We have a Django app and run tests using pytest. Once every ~20 runs the Python interpreter crashes with Fatal Python error: Aborted
. The Python interpreter crashes when trying to access socket.getfqdn
or socket.getaddrinfo
functions.
This only seems to happen on MacOS and we haven't seen this failure when running the same test suite on Linux (GitHub Actions).
I've also tried to isolate the problem but wasn't able to reproduce the issue by having a simple program that calls getfqdn
directly with or without pytest.
Here is a stack trace when getaddrinfo
crashes:
apps/integrations/render/tests/test_views.py .........Fatal Python error: Aborted
Current thread 0x000000020bac9f00 (most recent call first):
File "/opt/homebrew/Cellar/python@3.13/3.13.5/Frameworks/Python.framework/Versions/3.13/lib/python3.13/socket.py", line 977 in getaddrinfo
File "/opt/homebrew/Cellar/python@3.13/3.13.5/Frameworks/Python.framework/Versions/3.13/lib/python3.13/socket.py", line 840 in create_connection
File "/Users/nejcambrozic/code/app/.venv/lib/python3.13/site-packages/httpcore/_backends/sync.py", line 208 in connect_tcp
File "/Users/nejcambrozic/code/app/.venv/lib/python3.13/site-packages/httpcore/_sync/connection.py", line 124 in _connect
File "/Users/nejcambrozic/code/app/.venv/lib/python3.13/site-packages/httpcore/_sync/connection.py", line 78 in handle_request
File "/Users/nejcambrozic/code/app/.venv/lib/python3.13/site-packages/httpcore/_sync/connection_pool.py", line 236 in handle_request
File "/Users/nejcambrozic/code/app/.venv/lib/python3.13/site-packages/httpx/_transports/default.py", line 250 in handle_request
File "/Users/nejcambrozic/code/app/.venv/lib/python3.13/site-packages/httpx/_client.py", line 1014 in _send_single_request
File "/Users/nejcambrozic/code/app/.venv/lib/python3.13/site-packages/httpx/_client.py", line 979 in _send_handling_redirects
File "/Users/nejcambrozic/code/app/.venv/lib/python3.13/site-packages/httpx/_client.py", line 942 in _send_handling_auth
File "/Users/nejcambrozic/code/app/.venv/lib/python3.13/site-packages/httpx/_client.py", line 914 in send
File "/Users/nejcambrozic/code/app/.venv/lib/python3.13/site-packages/httpx/_client.py", line 825 in request
File "/Users/nejcambrozic/code/app/.venv/lib/python3.13/site-packages/httpx/_api.py", line 109 in request
File "/Users/nejcambrozic/code/app/apps/integrations/render/client.py", line 57 in request
File "/Users/nejcambrozic/code/app/.venv/lib/python3.13/site-packages/stamina/_core.py", line 756 in sync_inner
File "/Users/nejcambrozic/code/app/apps/integrations/render/views.py", line 22 in fetch_workspace_data
File "/Users/nejcambrozic/code/app/apps/integrations/render/views.py", line 62 in get_workspace_choices
File "/Users/nejcambrozic/code/app/apps/integrations/render/views.py", line 57 in __init__
File "/Users/nejcambrozic/code/app/apps/integrations/render/views.py", line 115 in edit
File "/Users/nejcambrozic/code/app/apps/organizations/decorators.py", line 38 in _inner
Here is a stack trace example when getfqdn
crashed:
apps/organizations/tests/test_organizations_middleware.py ....Fatal Python error: Aborted
Current thread 0x000000020a5b1f00 (most recent call first):
File "/Library/Frameworks/Python.framework/Versions/3.13/lib/python3.13/socket.py", line 807 in getfqdn
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/django/core/mail/utils.py", line 18 in get_fqdn
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/django/core/mail/utils.py", line 14 in __str__
File "/Library/Frameworks/Python.framework/Versions/3.13/lib/python3.13/email/utils.py", line 311 in make_msgid
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/django/core/mail/message.py", line 287 in message
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/django/core/mail/backends/locmem.py", line 30 in send_messages
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/django/core/mail/message.py", line 307 in send
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/django/core/mail/__init__.py", line 92 in send_mail
File "/Users/anzepecar/watchpointlabs/app/apps/organizations/invitations.py", line 16 in send_invitation
File "/Users/anzepecar/watchpointlabs/app/apps/organizations/views/manage_organization_views.py", line 127 in resend_invitation
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/django/views/decorators/http.py", line 64 in inner
File "/Users/anzepecar/watchpointlabs/app/apps/organizations/decorators.py", line 38 in _inner
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/django/core/handlers/base.py", line 197 in _get_response
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/django/core/handlers/exception.py", line 55 in inner
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/django_browser_reload/middleware.py", line 48 in __call__
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/django/core/handlers/exception.py", line 55 in inner
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/zeal/middleware.py", line 22 in middleware
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/django/core/handlers/exception.py", line 55 in inner
File "/Users/anzepecar/watchpointlabs/app/watchpoint_labs/middleware.py", line 53 in __call__
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/django/core/handlers/exception.py", line 55 in inner
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/auditlog/middleware.py", line 67 in __call__
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/django/core/handlers/exception.py", line 55 in inner
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/django/utils/deprecation.py", line 120 in __call__
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/django/core/handlers/exception.py", line 55 in inner
File "/Users/anzepecar/watchpointlabs/app/watchpoint_labs/middleware.py", line 20 in __call__
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/django/core/handlers/exception.py", line 55 in inner
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/django/utils/deprecation.py", line 120 in __call__
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/django/core/handlers/exception.py", line 55 in inner
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/django/utils/deprecation.py", line 120 in __call__
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/django/core/handlers/exception.py", line 55 in inner
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/django/utils/deprecation.py", line 120 in __call__
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/django/core/handlers/exception.py", line 55 in inner
File "/Users/anzepecar/watchpointlabs/app/apps/web/middleware/htmx.py", line 11 in __call__
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/django/core/handlers/exception.py", line 55 in inner
File "/Users/anzepecar/watchpointlabs/app/apps/web/middleware/locale.py", line 42 in __call__
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/django/core/handlers/exception.py", line 55 in inner
File "/Users/anzepecar/watchpointlabs/app/apps/web/middleware/locale.py", line 17 in __call__
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/django/core/handlers/exception.py", line 55 in inner
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/django/utils/deprecation.py", line 120 in __call__
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/django/core/handlers/exception.py", line 55 in inner
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/allauth/usersessions/middleware.py", line 18 in __call__
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/django/core/handlers/exception.py", line 55 in inner
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/allauth/account/middleware.py", line 36 in middleware
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/django/core/handlers/exception.py", line 55 in inner
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/django_htmx/middleware.py", line 39 in __call__
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/django/core/handlers/exception.py", line 55 in inner
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/django/utils/deprecation.py", line 120 in __call__
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/django/core/handlers/exception.py", line 55 in inner
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/django/utils/deprecation.py", line 120 in __call__
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/django/core/handlers/exception.py", line 55 in inner
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/django/utils/deprecation.py", line 120 in __call__
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/django/core/handlers/exception.py", line 55 in inner
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/django/utils/deprecation.py", line 120 in __call__
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/django/core/handlers/exception.py", line 55 in inner
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/django/utils/deprecation.py", line 120 in __call__
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/django/core/handlers/exception.py", line 55 in inner
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/whitenoise/middleware.py", line 123 in __call__
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/django/core/handlers/exception.py", line 55 in inner
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/django/utils/deprecation.py", line 120 in __call__
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/django/core/handlers/exception.py", line 55 in inner
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/django/core/handlers/base.py", line 140 in get_response
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/django/test/client.py", line 186 in __call__
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/django/test/client.py", line 1082 in request
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/django/test/client.py", line 671 in generic
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/django/test/client.py", line 499 in post
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/django/test/client.py", line 1153 in post
File "/Users/anzepecar/watchpointlabs/app/apps/organizations/tests/test_organizations_middleware.py", line 51 in test_organization_admin_view
File "/Library/Frameworks/Python.framework/Versions/3.13/lib/python3.13/unittest/case.py", line 606 in _callTestMethod
File "/Library/Frameworks/Python.framework/Versions/3.13/lib/python3.13/unittest/case.py", line 651 in run
File "/Library/Frameworks/Python.framework/Versions/3.13/lib/python3.13/unittest/case.py", line 707 in __call__
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/django/test/testcases.py", line 376 in _setup_and_call
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/django/test/testcases.py", line 321 in __call__
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/pytest_django/plugin.py", line 573 in non_debugging_runtest
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/_pytest/runner.py", line 178 in pytest_runtest_call
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/pluggy/_callers.py", line 121 in _multicall
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/pluggy/_manager.py", line 120 in _hookexec
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/pluggy/_hooks.py", line 512 in __call__
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/_pytest/runner.py", line 246 in <lambda>
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/_pytest/runner.py", line 344 in from_call
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/_pytest/runner.py", line 245 in call_and_report
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/_pytest/runner.py", line 136 in runtestprotocol
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/_pytest/runner.py", line 117 in pytest_runtest_protocol
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/pluggy/_callers.py", line 121 in _multicall
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/pluggy/_manager.py", line 120 in _hookexec
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/pluggy/_hooks.py", line 512 in __call__
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/_pytest/main.py", line 367 in pytest_runtestloop
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/pluggy/_callers.py", line 121 in _multicall
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/pluggy/_manager.py", line 120 in _hookexec
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/pluggy/_hooks.py", line 512 in __call__
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/_pytest/main.py", line 343 in _main
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/_pytest/main.py", line 289 in wrap_session
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/_pytest/main.py", line 336 in pytest_cmdline_main
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/pluggy/_callers.py", line 121 in _multicall
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/pluggy/_manager.py", line 120 in _hookexec
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/pluggy/_hooks.py", line 512 in __call__
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/_pytest/config/__init__.py", line 175 in main
File "/Users/anzepecar/watchpointlabs/app/.venv/lib/python3.13/site-packages/_pytest/config/__init__.py", line 201 in console_main
File "/Users/anzepecar/watchpointlabs/app/.venv/bin/pytest", line 10 in <module>
Extension modules: _brotli, _time_machine, yaml._yaml, greenlet._greenlet, tornado.speedups, regex._regex, websockets.speedups, psycopg_binary.pq, psycopg_binary._psycopg, _cffi_backend, charset_normalizer.md, snowflake.connector.nanoarrow_arrow_iterator, markupsafe._speedups, multidict._multidict, yarl._quoting_c, propcache._helpers_c, aiohttp._http_writer, aiohttp._http_parser, aiohttp._websocket.mask, aiohttp._websocket.reader_c, frozenlist._frozenlist, fontTools.misc.bezierTools, PIL._imaging, fontTools.varLib.iup, sqlalchemy.cyextension.collections, sqlalchemy.cyextension.immutabledict, sqlalchemy.cyextension.processors, sqlalchemy.cyextension.resultproxy, sqlalchemy.cyextension.util, ujson, asyncpg.pgproto.pgproto, asyncpg.protocol.protocol, maxminddb.extension (total: 33)
I'm also attaching the Problem Details and System Configuration output from the Python quit unexpectedly dialog on MacOS:
CPython versions tested on:
3.13
Operating systems tested on:
macOS
Output from running 'python -VV' on the command line:
Python 3.13.5 (v3.13.5:6cb20a219a8, Jun 11 2025, 12:23:45) [Clang 16.0.0 (clang-1600.0.26.6)]