Title: Unexpected traceback output in test_concurrent_futures and crash · Issue #109370 · python/cpython · GitHub
Open Graph Title: Unexpected traceback output in test_concurrent_futures and crash · Issue #109370 · python/cpython
X Title: Unexpected traceback output in test_concurrent_futures and crash · Issue #109370 · python/cpython
Description: Crash report When I run tests in single-process mode I get unexpected traceback output but tests was marked as passed: Details $ ./python -m test -r == CPython 3.13.0a0 (heads/regretest-no-remove-test-module:eb7766baa4, Sep 13 2023, 10:5...
Open Graph Description: Crash report When I run tests in single-process mode I get unexpected traceback output but tests was marked as passed: Details $ ./python -m test -r == CPython 3.13.0a0 (heads/regretest-no-remove-t...
X Description: Crash report When I run tests in single-process mode I get unexpected traceback output but tests was marked as passed: Details $ ./python -m test -r == CPython 3.13.0a0 (heads/regretest-no-remove-t...
Opengraph URL: https://github.com/python/cpython/issues/109370
X: @github
Domain: github.com
{"@context":"https://schema.org","@type":"DiscussionForumPosting","headline":"Unexpected traceback output in test_concurrent_futures and crash","articleBody":"# Crash report\n\nWhen I run tests in single-process mode I get unexpected traceback output but tests was marked as passed:\n\n\u003cdetails\u003e\n\n```\n$ ./python -m test -r\n== CPython 3.13.0a0 (heads/regretest-no-remove-test-module:eb7766baa4, Sep 13 2023, 10:58:19) [GCC 11.4.0]\n== Linux-5.15.0-79-generic-x86_64-with-glibc2.35 little-endian\n== Python build: debug\n== cwd: /home/serhiy/py/cpython/build/test_python_worker_3200061æ\n== CPU count: 8\n== encodings: locale=UTF-8, FS=utf-8\nUsing random seed 68644298\n0:00:00 load avg: 0.75 Run 463 tests sequentially\n...\n0:12:03 load avg: 1.72 [191/463] test.test_concurrent_futures.test_process_pool\nTraceback (most recent call last):\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/queues.py\", line 250, in _feed\n send_bytes(obj)\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/connection.py\", line 185, in send_bytes\n self._check_closed()\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/connection.py\", line 138, in _check_closed\n raise OSError(\"handle is closed\")\nOSError: handle is closed\nTraceback (most recent call last):\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/queues.py\", line 250, in _feed\n send_bytes(obj)\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/connection.py\", line 185, in send_bytes\n self._check_closed()\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/connection.py\", line 138, in _check_closed\n raise OSError(\"handle is closed\")\nOSError: handle is closed\nTraceback (most recent call last):\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/queues.py\", line 250, in _feed\n send_bytes(obj)\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/connection.py\", line 185, in send_bytes\n self._check_closed()\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/connection.py\", line 138, in _check_closed\n raise OSError(\"handle is closed\")\nOSError: handle is closed\nTraceback (most recent call last):\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/queues.py\", line 250, in _feed\n send_bytes(obj)\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/connection.py\", line 185, in send_bytes\n self._check_closed()\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/connection.py\", line 138, in _check_closed\n raise OSError(\"handle is closed\")\nOSError: handle is closed\n0:12:21 load avg: 1.52 [192/463] test_codecencodings_tw\n...\n0:25:47 load avg: 1.21 [361/463] test.test_concurrent_futures.test_deadlock\nTraceback (most recent call last):\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/queues.py\", line 250, in _feed\n send_bytes(obj)\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/connection.py\", line 185, in send_bytes\n self._check_closed()\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/connection.py\", line 138, in _check_closed\n raise OSError(\"handle is closed\")\nOSError: handle is closed\nTraceback (most recent call last):\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/queues.py\", line 250, in _feed\n send_bytes(obj)\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/connection.py\", line 201, in send_bytes\n self._send_bytes(m[offset:offset + size])\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/connection.py\", line 422, in _send_bytes\n self._send(buf)\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/connection.py\", line 385, in _send\n n = write(self._handle, buf)\n ^^^^^^^^^^^^^^^^^^^^^^^^\nTypeError: 'NoneType' object cannot be interpreted as an integer\nTraceback (most recent call last):\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/queues.py\", line 250, in _feed\n send_bytes(obj)\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/connection.py\", line 185, in send_bytes\n self._check_closed()\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/connection.py\", line 138, in _check_closed\n raise OSError(\"handle is closed\")\nOSError: handle is closed\nTraceback (most recent call last):\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/queues.py\", line 250, in _feed\n send_bytes(obj)\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/connection.py\", line 185, in send_bytes\n self._check_closed()\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/connection.py\", line 138, in _check_closed\n raise OSError(\"handle is closed\")\nOSError: handle is closed\nTraceback (most recent call last):\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/queues.py\", line 250, in _feed\n send_bytes(obj)\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/connection.py\", line 185, in send_bytes\n self._check_closed()\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/connection.py\", line 138, in _check_closed\n raise OSError(\"handle is closed\")\nOSError: handle is closed\nTraceback (most recent call last):\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/queues.py\", line 250, in _feed\n send_bytes(obj)\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/connection.py\", line 185, in send_bytes\n self._check_closed()\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/connection.py\", line 138, in _check_closed\n raise OSError(\"handle is closed\")\nOSError: handle is closed\nTraceback (most recent call last):\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/queues.py\", line 250, in _feed\n send_bytes(obj)\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/connection.py\", line 185, in send_bytes\n self._check_closed()\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/connection.py\", line 138, in _check_closed\n raise OSError(\"handle is closed\")\nOSError: handle is closed\nTraceback (most recent call last):\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/queues.py\", line 250, in _feed\n send_bytes(obj)\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/connection.py\", line 185, in send_bytes\n self._check_closed()\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/connection.py\", line 138, in _check_closed\n raise OSError(\"handle is closed\")\nOSError: handle is closed\nTraceback (most recent call last):\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/queues.py\", line 250, in _feed\n send_bytes(obj)\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/connection.py\", line 185, in send_bytes\n self._check_closed()\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/connection.py\", line 138, in _check_closed\n raise OSError(\"handle is closed\")\nOSError: handle is closed\nTraceback (most recent call last):\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/queues.py\", line 250, in _feed\n send_bytes(obj)\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/connection.py\", line 185, in send_bytes\n self._check_closed()\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/connection.py\", line 138, in _check_closed\n raise OSError(\"handle is closed\")\nOSError: handle is closed\nTraceback (most recent call last):\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/queues.py\", line 250, in _feed\n send_bytes(obj)\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/connection.py\", line 185, in send_bytes\n self._check_closed()\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/connection.py\", line 138, in _check_closed\n raise OSError(\"handle is closed\")\nOSError: handle is closed\nTraceback (most recent call last):\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/queues.py\", line 250, in _feed\n send_bytes(obj)\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/connection.py\", line 185, in send_bytes\n self._check_closed()\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/connection.py\", line 138, in _check_closed\n raise OSError(\"handle is closed\")\nOSError: handle is closed\nTraceback (most recent call last):\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/queues.py\", line 250, in _feed\n send_bytes(obj)\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/connection.py\", line 201, in send_bytes\n self._send_bytes(m[offset:offset + size])\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/connection.py\", line 422, in _send_bytes\n self._send(buf)\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/connection.py\", line 385, in _send\n n = write(self._handle, buf)\n ^^^^^^^^^^^^^^^^^^^^^^^^\nTypeError: 'NoneType' object cannot be interpreted as an integer\nTraceback (most recent call last):\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/queues.py\", line 250, in _feed\n send_bytes(obj)\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/connection.py\", line 185, in send_bytes\n self._check_closed()\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/connection.py\", line 138, in _check_closed\n raise OSError(\"handle is closed\")\nOSError: handle is closed\nTraceback (most recent call last):\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/queues.py\", line 250, in _feed\n send_bytes(obj)\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/connection.py\", line 185, in send_bytes\n self._check_closed()\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/connection.py\", line 138, in _check_closed\n raise OSError(\"handle is closed\")\nOSError: handle is closed\nTraceback (most recent call last):\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/queues.py\", line 250, in _feed\n send_bytes(obj)\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/connection.py\", line 185, in send_bytes\n self._check_closed()\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/connection.py\", line 138, in _check_closed\n raise OSError(\"handle is closed\")\nOSError: handle is closed\nTraceback (most recent call last):\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/queues.py\", line 250, in _feed\n send_bytes(obj)\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/connection.py\", line 201, in send_bytes\n self._send_bytes(m[offset:offset + size])\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/connection.py\", line 422, in _send_bytes\n self._send(buf)\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/connection.py\", line 385, in _send\n n = write(self._handle, buf)\n ^^^^^^^^^^^^^^^^^^^^^^^^\nTypeError: 'NoneType' object cannot be interpreted as an integer\nTraceback (most recent call last):\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/queues.py\", line 250, in _feed\n send_bytes(obj)\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/connection.py\", line 185, in send_bytes\n self._check_closed()\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/connection.py\", line 138, in _check_closed\n raise OSError(\"handle is closed\")\nOSError: handle is closed\nTraceback (most recent call last):\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/queues.py\", line 250, in _feed\n send_bytes(obj)\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/connection.py\", line 185, in send_bytes\n self._check_closed()\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/connection.py\", line 138, in _check_closed\n raise OSError(\"handle is closed\")\nOSError: handle is closed\nTraceback (most recent call last):\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/queues.py\", line 250, in _feed\n send_bytes(obj)\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/connection.py\", line 185, in send_bytes\n self._check_closed()\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/connection.py\", line 138, in _check_closed\n raise OSError(\"handle is closed\")\nOSError: handle is closed\n0:26:01 load avg: 1.10 [362/463] test_bigaddrspace\n...\n0:26:20 load avg: 1.08 [368/463] test.test_concurrent_futures.test_init\nTraceback (most recent call last):\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/queues.py\", line 250, in _feed\n send_bytes(obj)\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/connection.py\", line 185, in send_bytes\n self._check_closed()\n File \"/home/serhiy/py/cpython/Lib/multiprocessing/connection.py\", line 138, in _check_closed\n raise OSError(\"handle is closed\")\nOSError: handle is closed\n0:26:23 load avg: 1.15 [369/463] test_eof\n...\n```\n\u003c/details\u003e\n\nThen Python crashed after reporting total success:\n```\nTotal duration: 38 min 29 sec\nTotal tests: run=40,827 skipped=1,248\nTotal test files: run=453/463 skipped=10 resource_denied=10\nResult: SUCCESS\nFatal Python error: Segmentation fault\n\nCurrent thread 0x00007fb61c438740 (most recent call first):\n Garbage-collecting\n \u003cno Python frame\u003e\nПомилка адресування (збережено знімок оперативної пам’яті)\n```\nThe last line is \"Segfault (core dumped)\" in Ukrainian, but I have no core dump because `ulimit -c` was 0.\n\nI ran tests with a modification of #108952 which does not remove test module or any imported during testing modules before or after running a test.\n\ncc @vstinner\n\n\u003c!-- gh-linked-prs --\u003e\n### Linked PRs\n* gh-109397\n* gh-109780\n* gh-109882\n* gh-111934\n\u003c!-- /gh-linked-prs --\u003e\n","author":{"url":"https://github.com/serhiy-storchaka","@type":"Person","name":"serhiy-storchaka"},"datePublished":"2023-09-13T10:00:46.000Z","interactionStatistic":{"@type":"InteractionCounter","interactionType":"https://schema.org/CommentAction","userInteractionCount":8},"url":"https://github.com/109370/cpython/issues/109370"}
| route-pattern | /_view_fragments/issues/show/:user_id/:repository/:id/issue_layout(.:format) |
| route-controller | voltron_issues_fragments |
| route-action | issue_layout |
| fetch-nonce | v2:cb33910c-454d-0204-b397-6505e861c9c5 |
| current-catalog-service-hash | 81bb79d38c15960b92d99bca9288a9108c7a47b18f2423d0f6438c5b7bcd2114 |
| request-id | D1B0:357A8A:BF1D0A:F80CCA:696B26DC |
| html-safe-nonce | 73b57ae75def1038f2afa16b09331216db2f9d20601b29ed8ad1b4fc4d3337ea |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJEMUIwOjM1N0E4QTpCRjFEMEE6RjgwQ0NBOjY5NkIyNkRDIiwidmlzaXRvcl9pZCI6IjM3ODk1NzE4MDg3ODQyMzAxMDgiLCJyZWdpb25fZWRnZSI6ImlhZCIsInJlZ2lvbl9yZW5kZXIiOiJpYWQifQ== |
| visitor-hmac | 8e59a9684cffe13a14237817cba344d0fbefc61c319e454d94a9f10d1a916a3d |
| hovercard-subject-tag | issue:1894183727 |
| github-keyboard-shortcuts | repository,issues,copilot |
| google-site-verification | Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I |
| octolytics-url | https://collector.github.com/github/collect |
| analytics-location | / |
| fb:app_id | 1401488693436528 |
| apple-itunes-app | app-id=1477376905, app-argument=https://github.com/_view_fragments/issues/show/python/cpython/109370/issue_layout |
| twitter:image | https://opengraph.githubassets.com/854718e209bde9ea4a37dbdd62202b678ada89ea7499c87f9d9362e59b6dc2e0/python/cpython/issues/109370 |
| twitter:card | summary_large_image |
| og:image | https://opengraph.githubassets.com/854718e209bde9ea4a37dbdd62202b678ada89ea7499c87f9d9362e59b6dc2e0/python/cpython/issues/109370 |
| og:image:alt | Crash report When I run tests in single-process mode I get unexpected traceback output but tests was marked as passed: Details $ ./python -m test -r == CPython 3.13.0a0 (heads/regretest-no-remove-t... |
| og:image:width | 1200 |
| og:image:height | 600 |
| og:site_name | GitHub |
| og:type | object |
| og:author:username | serhiy-storchaka |
| hostname | github.com |
| expected-hostname | github.com |
| None | 5f99f7c1d70f01da5b93e5ca90303359738944d8ab470e396496262c66e60b8d |
| turbo-cache-control | no-preview |
| go-import | github.com/python/cpython git https://github.com/python/cpython.git |
| octolytics-dimension-user_id | 1525981 |
| octolytics-dimension-user_login | python |
| octolytics-dimension-repository_id | 81598961 |
| octolytics-dimension-repository_nwo | python/cpython |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 81598961 |
| octolytics-dimension-repository_network_root_nwo | python/cpython |
| turbo-body-classes | logged-out env-production page-responsive |
| disable-turbo | false |
| browser-stats-url | https://api.github.com/_private/browser/stats |
| browser-errors-url | https://api.github.com/_private/browser/errors |
| release | 82560a55c6b2054555076f46e683151ee28a19bc |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
Links:
Viewport: width=device-width