python / python/cpython

test_sampling_profiler: test_run_failed_script_live() failed on s390x LTO+PGO build: "Failed to find the PyRuntime section"

Đang mở
#155,488 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.

tests topic-profiling
Ngôn ngữ chính
Python
Star
77.2k
Fork
35.9k
Chỉ số merge pull request
Chỉ số pull request đang chờ

Mô tả

s390x Fedora Stable LTO + PGO 3.x: https://buildbot.python.org/#/builders/1627/builds/3165

Previous builds are fine, the error may depend on how PGO decides to optimize the code. I bet that the test will pass on the next build.

Logs:

ERROR: test_run_failed_script_live (test.test_profiling.test_sampling_profiler.test_live_collector_ui.TestLiveModeErrors.test_run_failed_script_live)
Test that running a failing script exits with clean error.
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/var/lib/buildbot/worker/cstratak-fedora-stable-s390x/3.x.cstratak-fedora-stable-s390x.lto-pgo/build/Lib/profiling/sampling/sample.py", line 87, in __init__
    self.unwinder = self._new_unwinder(native, gc, opcodes, skip_non_matching_threads)
                    ~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/var/lib/buildbot/worker/cstratak-fedora-stable-s390x/3.x.cstratak-fedora-stable-s390x.lto-pgo/build/Lib/profiling/sampling/sample.py", line 102, in _new_unwinder
    return _remote_debugging.RemoteUnwinder(
           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
        self.pid,
        ^^^^^^^^^
    ...<7 lines>...
        **kwargs
        ^^^^^^^^
    )
    ^
RuntimeError: Failed to find the PyRuntime section in process 149156 on Linux platform

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/var/lib/buildbot/worker/cstratak-fedora-stable-s390x/3.x.cstratak-fedora-stable-s390x.lto-pgo/build/Lib/test/test_profiling/test_sampling_profiler/test_live_collector_ui.py", line 900, in test_run_failed_script_live
    main()
    ~~~~^^
  File "/var/lib/buildbot/worker/cstratak-fedora-stable-s390x/3.x.cstratak-fedora-stable-s390x.lto-pgo/build/Lib/profiling/sampling/cli.py", line 989, in main
    _main()
    ~~~~~^^
  File "/var/lib/buildbot/worker/cstratak-fedora-stable-s390x/3.x.cstratak-fedora-stable-s390x.lto-pgo/build/Lib/profiling/sampling/cli.py", line 1145, in _main
    handler(args)
    ~~~~~~~^^^^^^
  File "/var/lib/buildbot/worker/cstratak-fedora-stable-s390x/3.x.cstratak-fedora-stable-s390x.lto-pgo/build/Lib/profiling/sampling/cli.py", line 1251, in _handle_run
    _handle_live_run(args)
    ~~~~~~~~~~~~~~~~^^^^^^
  File "/var/lib/buildbot/worker/cstratak-fedora-stable-s390x/3.x.cstratak-fedora-stable-s390x.lto-pgo/build/Lib/profiling/sampling/cli.py", line 1386, in _handle_live_run
    sample_live(
    ~~~~~~~~~~~^
        process.pid,
        ^^^^^^^^^^^^
    ...<9 lines>...
        blocking=args.blocking,
        ^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
  File "/var/lib/buildbot/worker/cstratak-fedora-stable-s390x/3.x.cstratak-fedora-stable-s390x.lto-pgo/build/Lib/profiling/sampling/sample.py", line 610, in sample_live
    profiler = SampleProfiler(
        pid,
    ...<8 lines>...
        blocking=blocking,
    )
  File "/var/lib/buildbot/worker/cstratak-fedora-stable-s390x/3.x.cstratak-fedora-stable-s390x.lto-pgo/build/Lib/profiling/sampling/sample.py", line 89, in __init__
    raise SystemExit(err) from err
SystemExit: Failed to find the PyRuntime section in process 149156 on Linux platform

cc @stratakis

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

Mở hướng dẫn đóng góp

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

Bắt đầu bằng cách chạy test_run_failed_script_live() trong test/test_profiling/test_sampling_profiler/test_live_collector_ui.py trên bản build s390x Fedora Stable LTO+PGO. Theo dõi quá trình khởi tạo SampleProfiler và _new_unwinder() trong Lib/profiling/sampling/sample.py, sử dụng các build log được liên kết làm ngữ cảnh. Hoàn thành khi test xử lý process một cách ổn định và không còn thất bại với “Failed to find the PyRuntime section”.

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

Đánh giá

Công nghệ
fedora, linux, python
Lĩnh vực
build-system, performance, testing-qa
Loại issue
Lỗi
Độ khó
4/5
Thời gian dự kiến
3-5 ngày
Mức độ hoạt động
Ít trao đổi
Độ 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.