[ci-scan] Test failure: EventPipe rundownvalidation LCG child stack overflow on Windows x64

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

Maintainer thường phản hồi trong vòng 1 ngày

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

Đánh giá

Độ khó
5/5
Thời gian dự kiến
Hơn một tuần
Mức phù hợp với người mới
12/100
Loại issue
Lỗi
Độ rõ ràng
Khá rõ ràng
Mức độ hoạt động
Sôi nổi
Công nghệ
cmake, csharp
Lĩnh vực
testing-qa

Hướng nghiên cứu

The failure is a stack overflow in the LCG jump-stub child of the EventPipe rundown validation test, run from tracing/eventpipe/rundownvalidation/rundownvalidation/rundownvalidation.cmd on Windows x64. The stack points at AssemblyLoadContext.StartAssemblyLoad and repeated FileLoadException construction through RuntimeHelpers.CallDefaultConstructor, so the cause sits in the runtime's assembly-loading path rather than the test itself. Done would mean the child exits cleanly and the wrapper returns 100, which needs a root-cause fix from runtime owners rather than a quick patch.

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

Mô tả

agentic-workflows area-Diagnostics-coreclr blocking-clean-ci Known Build Error untriaged

Build Information

Build: https://dev.azure.com/dnceng-public/public/_build/results?buildId=1669824
Build error leg or test failing: coreclr Pri1 Runtime Tests Run R2R_Composite windows x64 checked-tracing/eventpipe/rundownvalidation/rundownvalidation/rundownvalidation.cmd
Pipeline: runtime-coreclr crossgen2 outerloop, definition 134, main.
Queue: windows.amd64.open.rt. Stress mode: no_tiered_compilation.
First build it occurred: https://dev.azure.com/dnceng-public/public/_build/results?buildId=1657378 (finished 2026-10-31; earliest verified occurrence in the sampled window, not a proven introducing build).
Follow-up build: https://dev.azure.com/dnceng-public/public/_build/results?buildId=1670338 (finished 2026-11-09), same child-exit diagnostic and recursive exception-construction stack.

KBE authoring guidance (ci-failure-scan)
  • Error Details is for readers. Paste the full exception, stack trace, or build error excerpt so the failure is understandable without opening the raw log.
  • Build Analysis parses only the single JSON block under Error Message.
  • ErrorMessage is a case-sensitive ordinal String.Contains substring copied verbatim from the failing log.
  • Set BuildRetry to true only for a clear infrastructure retry case. ExcludeConsoleLog disables Helix console-log scanning.

Error Details

The LCG jump-stub child crashes with Windows stack-overflow status -1073741571 after the initial rundown validation succeeds. Its stack repeatedly constructs FileLoadException through RuntimeHelpers.CallDefaultConstructor, below AssemblyLoadContext.StartAssemblyLoad. The parent then returns -1 and the test wrapper returns 101 instead of 100. No underlying fix is established here.

The exact child-exit diagnostic was verified in six distinct prior builds (1657378, 1658441, 1659123, 1661208, 1665289, 1668937), source 1669824, and follow-up 1670338: eight builds in this definition. Ten prior build inventories and 18 Windows-x64 tracing consoles were inspected. Both tracing consoles in build 1655529 (finished 2026-10-30) instead report an LCG-child timeout; that is an absence of this exact crash diagnostic, not a passing affected test.

The same crash diagnostic also reproduces in crossgen2-composite gcstress source 1669831 and follow-up 1670530 on Windows x64 with heapverify1; this single matcher covers that occurrence too.

Source console: https://helix.dot.net/api/jobs/a2649452-f3b1-490b-87e3-ec7f9a7b46c4/workitems/tracing/console

The complete child-crash stack and subsequent assertion are below; intervening successful trace-validation output, run-specific timing prefixes, and checkout paths are omitted.

Stack overflow.
Repeated 89 times:
--------------------------------
   at System.IO.FileLoadException..ctor()
   at System.Runtime.CompilerServices.RuntimeHelpers.CallDefaultConstructor(System.Object*, Void (System.Object), System.Exception*)
--------------------------------
   at System.Runtime.Loader.AssemblyLoadContext.StartAssemblyLoad(System.Guid*, System.Guid*, System.Exception*)

LCG jump-stub child exited with -1073741571; trace exists: True.
Xunit.Sdk.EqualException: Assert.Equal() Failure: Values differ
Expected: 100
Actual:   -1
   at Xunit.Assert.Equal[T](T expected, T actual, IEqualityComparer`1 comparer) in /_/src/arcade/src/Microsoft.DotNet.XUnitAssert/src/EqualityAsserts.cs:line 102
   at __GeneratedMainWrapper.Main()
Expected: 100
Actual: 101
END EXECUTION - FAILED
Failed test: tracing/eventpipe/rundownvalidation/rundownvalidation/rundownvalidation.cmd

Error Message

{
  "ErrorMessage": "LCG jump-stub child exited with -1073741571; trace exists: True.",
  "ErrorPattern": "",
  "BuildRetry": false,
  "ExcludeConsoleLog": false
}
Agentic workflow metadata (ci-failure-scan)

Workflow artifact: ci-failure-scan
Artifact kind: kbe-verification
Verified match count: 2 hits in failure.log

The literal matches twice in the saved raw source console, once in direct output and once in the harness repetition. Passing/skipped negative checks are empty. It also matches twice in each selected follow-up console and the related gcstress consoles. Repeated lines and multiple legs within one build are not counted as independent build occurrences.


Filed by ci-failure-scan (detection only). ci-failure-fix walks open [ci-scan] KBEs and either opens a small fix PR or comments here to loop in owners — it never disables the test.

[!NOTE]
Generated by GitHub Copilot.

Generated by CI Outer-Loop Failure Scanner · copilot · gpt61 · ~247 AIC · ⌖ ~15 AIC · ⊞ 33.3K · ◷

Report
Build Repository Test Pull Request
1674662 dotnet/runtime OutOfProcessTest.tracing/eventpipe/config/name_config_with_pid/name_config_with_pid.cmd
1672306 dotnet/runtime OutOfProcessTest.tracing/eventpipe/config/name_config_with_pid/name_config_with_pid.cmd
Summary
24-Hour Hit Count 7-Day Hit Count 1-Month Count
1 2 2
Ngôn ngữ chính
C#
Star
18.4k
Fork
5.8k
Merge trung bình
2 ngày 19 giờ
Pull request đã merge (30 ngày)
590

Chuẩn bị môi trường

Mở trong Codespaces

Khởi chạy dev container của dự án ngay trên trình duyệt, bằng tài khoản GitHub của bạn.

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.

Issue khác của dotnet/runtime

Tất cả issue của dotnet/runtime

Issue tương tự

Thêm issue về C#

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.