test_sampling_profiler: test_run_failed_script_live() failed on s390x LTO+PGO build: "Failed to find the PyRuntime section"
オープン
まだ誰も着手していません。
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 にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- 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