test_sampling_profiler: test_run_failed_script_live() failed on s390x LTO+PGO build: "Failed to find the PyRuntime section"
未關閉
還沒有人認領這個 Issue。
tests
topic-profiling
- 主要語言
- Python
- 星號
- 77.2k
- 分支
- 35.9k
- PR 合併指標
- PR 指標待擷取
描述
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
貢獻指南
從這裡開始
- 先讀完整個 Issue,再讀專案的貢獻指南。
- 在 Issue 下留言說明你要接手 —— 這能避免兩個人做同樣的事。
- Fork 儲存庫,在一個分支上完成修改。
- 送出 Pull Request,並在描述裡引用這個 Issue 編號。
研究方向
先在 s390x Fedora Stable LTO+PGO 建置上執行 test/test_profiling/test_sampling_profiler/test_live_collector_ui.py 中的 test_run_failed_script_live()。以連結的建置日誌作為背景,追蹤 Lib/profiling/sampling/sample.py 中的 SampleProfiler 初始化和 _new_unwinder()。當測試能可靠地處理該程序,且不再因「Failed to find the PyRuntime section」而失敗時,即表示完成。
由索引模型根據 Issue 內容生成。
評估
- 技術堆疊
- fedora, linux, python
- 領域
- build-system, performance, testing-qa
- Issue 類型
- 缺陷
- 難度
- 4/5
- 預估耗時
- 3-5 天
- 活躍度
- 冷清
- 描述清晰度
- 需要釐清
- 新手友好度
- 35/100