MagicStack / MagicStack/uvloop

[openbsd] test_fs_event.py causes Segmentation fault in python

Đang mở
#620 0 bình luận 0 reaction 0 người được giao Xem trên GitHub

Chưa có ai nhận issue này.

Ngôn ngữ chính
Cython
Star
11.9k
Fork
616
Chỉ số merge pull request
Không có pull request nào được merge trong 30 ngày

Mô tả

  • uvloop version: 0.20.0
  • Python version: 3.11.9
  • Platform: OpenBSD
  • Can you reproduce the bug with PYTHONASYNCIODEBUG in env?: Yes
  • Does uvloop behave differently from vanilla asyncio? How?:

Test output for the specific test

===>  Regression tests for py3-uvloop-0.20.0
cd /usr/ports/pobj/py-uvloop-0.20.0-python3/uvloop-0.20.0 && env PYTHONASYNCIODEBUG=1 py.test -vvv 'tests/test_fs_event.py::Test_UV_FS_EVENT_CHANGE::test_fs_event_change'
============================= test session starts ==============================
platform openbsd7 -- Python 3.11.9, pytest-8.2.0, pluggy-1.5.0 -- /usr/local/bin/python3.11
cachedir: .pytest_cache
rootdir: /usr/ports/pobj/py-uvloop-0.20.0-python3/uvloop-0.20.0
configfile: pyproject.toml
collecting ... collected 1 item

tests/test_fs_event.py::Test_UV_FS_EVENT_CHANGE::test_fs_event_change Fatal Python error: Segmentation fault

Current thread 0x0000063d21efb7d0 (most recent call first):
  File "/usr/ports/pobj/py-uvloop-0.20.0-python3/uvloop-0.20.0/tests/test_fs_event.py", line 49 in test_fs_event_change
  File "/usr/local/lib/python3.11/unittest/case.py", line 579 in _callTestMethod
  File "/usr/local/lib/python3.11/unittest/case.py", line 623 in run
  File "/usr/local/lib/python3.11/unittest/case.py", line 678 in __call__
  File "/usr/local/lib/python3.11/site-packages/_pytest/unittest.py", line 343 in runtest
  File "/usr/local/lib/python3.11/site-packages/_pytest/runner.py", line 173 in pytest_runtest_call
  File "/usr/local/lib/python3.11/site-packages/pluggy/_callers.py", line 103 in _multicall
  File "/usr/local/lib/python3.11/site-packages/pluggy/_manager.py", line 120 in _hookexec
  File "/usr/local/lib/python3.11/site-packages/pluggy/_hooks.py", line 513 in __call__
  File "/usr/local/lib/python3.11/site-packages/_pytest/runner.py", line 241 in <lambda>
  File "/usr/local/lib/python3.11/site-packages/_pytest/runner.py", line 341 in from_call
  File "/usr/local/lib/python3.11/site-packages/_pytest/runner.py", line 240 in call_and_report
  File "/usr/local/lib/python3.11/site-packages/_pytest/runner.py", line 135 in runtestprotocol
  File "/usr/local/lib/python3.11/site-packages/_pytest/runner.py", line 116 in pytest_runtest_protocol
  File "/usr/local/lib/python3.11/site-packages/pluggy/_callers.py", line 103 in _multicall
  File "/usr/local/lib/python3.11/site-packages/pluggy/_manager.py", line 120 in _hookexec
  File "/usr/local/lib/python3.11/site-packages/pluggy/_hooks.py", line 513 in __call__
  File "/usr/local/lib/python3.11/site-packages/_pytest/main.py", line 364 in pytest_runtestloop
  File "/usr/local/lib/python3.11/site-packages/pluggy/_callers.py", line 103 in _multicall
  File "/usr/local/lib/python3.11/site-packages/pluggy/_manager.py", line 120 in _hookexec
  File "/usr/local/lib/python3.11/site-packages/pluggy/_hooks.py", line 513 in __call__
  File "/usr/local/lib/python3.11/site-packages/_pytest/main.py", line 339 in _main
  File "/usr/local/lib/python3.11/site-packages/_pytest/main.py", line 285 in wrap_session
  File "/usr/local/lib/python3.11/site-packages/_pytest/main.py", line 332 in pytest_cmdline_main
  File "/usr/local/lib/python3.11/site-packages/pluggy/_callers.py", line 103 in _multicall
  File "/usr/local/lib/python3.11/site-packages/pluggy/_manager.py", line 120 in _hookexec
  File "/usr/local/lib/python3.11/site-packages/pluggy/_hooks.py", line 513 in __call__
  File "/usr/local/lib/python3.11/site-packages/_pytest/config/__init__.py", line 178 in main
  File "/usr/local/lib/python3.11/site-packages/_pytest/config/__init__.py", line 206 in console_main
  File "/usr/local/bin/py.test", line 8 in <module>

Extension modules: uvloop.loop (total: 1)
Segmentation fault (core dumped)
*** Error 139 in . (Makefile:40 'do-test')
*** Error 2 in . (/usr/ports/infrastructure/mk/bsd.port.mk:3090 '/usr/ports/pobj/py-uvloop-0.20.0-python3/.test_done': @cd /usr/ports/devel/...)
*** Error 2 in /usr/ports/devel/py-uvloop (/usr/ports/infrastructure/mk/bsd.port.mk:2704 'test': @lock=py3-uvloop-0.20.0;  export _LOCKS_HEL...)

Hướng dẫn đóng góp

Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Hướng nghiên cứu

Lỗi được báo cáo ở dòng 49 của tests/test_fs_event.py; trước tiên hãy chạy lệnh pytest được cung cấp với PYTHONASYNCIODEBUG=1 trên OpenBSD. Điều tra lỗi phân đoạn trong uvloop.loop trong quá trình test_fs_event_change và xác minh rằng bài kiểm thử được nhắm đến hoàn tất mà không bị crash khi thực hiện xong.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Đánh giá

Công nghệ
python
Lĩnh vực
operating-systems
Loại issue
Lỗi
Độ khó
4/5
Thời gian dự kiến
3-5 ngày
Mức độ hoạt động
Đình trệ
Độ rõ ràng
Cần làm rõ
Mức phù hợp với người mới
35/100

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.