Linux arm64 single-file CI failures caused by inconsistent .NET 11 host package restore

オープン
#6,213 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

メンテナーはふだん 1 日以内に返信

まだ誰も着手していません。

評価

難易度
4/5
見積もり時間
3〜5日
初心者へのやさしさ
48/100
issue の種類
バグ
明瞭さ
おおむね明確
活発さ
活発
技術スタック
azure, csharp

調査の方向性

Start by comparing the CI logs and binlogs for builds 1674595 and 1674668, then inspect NuGet.config and the single-file test targets that restore Microsoft.NETCore.App.Host.linux-arm64. Trace how package source selection affects the host package and the DBI identity used by the DbgShim and SOS tests. Done means Linux arm64 .NET 11 single-file tests use a host and test runtime components from a consistent build, with CI confirming the fix.

索引モデルが issue の本文から書いたものです。

説明

Description

Linux arm64 CI is failing for .NET 11 single-file targets in:

  • Microsoft.Diagnostics.DbgShimTests.CreateDebuggingInterfaceFromVersion3LoadPolicy
  • SOS.Tests.ClrStackFrameCountTests.ClrStack_ICorDebugFrameCount, running clrstack -i

The passing and failing builds restored different contents for Microsoft.NETCore.App.Host.linux-arm64, despite requesting the same 11.0.0 version.

Evidence

Build Queued, UTC Host package source
1674595, Linux arm64 passing November 11, 03:06 darc-pub-dotnet-dotnet-a586537b-1
1674668, first observed failure November 11, 05:08 dotnet-public

Both restored Microsoft.NETCore.App.Runtime.linux-arm64 11.0.0 from the pinned Darc feed. The host package content hashes differ between builds.

The binlogs confirm that OverrideTestingVersions executes, ResolveAppHosts requests exactly [11.0.0], and single-file publishing consumes the restored host. The override is not being skipped. However, NuGet.config permits both feeds without package source mapping, so the version constraint does not identify a unique build.

The failing single-file target requests DBI build ID 53f2b051911c0e4fdc667d2615853c36052740f9, which does not match the supplied DBI. The DbgShim provider rejects that mismatch. SOS records the same requested DBI identity and reports:

clrstack -i is unsupported on this target.
The ICorDebug interface cannot be constructed.

No repository SDK/runtime pin changed between these builds. The installed runtime remains pinned to 11.0.0-rtm.26514.118.

Expected behavior

Single-file hosts and the runtime/DAC/DBI supplied for testing should come from a consistent runtime build. Restore should enforce package provenance or content identity, rather than relying solely on the shared 11.0.0 version.

Verified by CI log, binlog, and package inspection; no local execution repro. The exact reason restore selected different feeds, and the precise SOS activation failure, remain unconfirmed.

主要言語
C++
スター
1.3k
フォーク
407
平均マージ
21時間 5分
マージ済み PR(30日)
78

環境構築

Codespaces で開く

このプロジェクトの開発コンテナを、あなたの GitHub アカウントでブラウザ上に起動します。

  • Dockerfile・Docker Compose ファイルなし
  • プルリクエストのテンプレートなし
  • コントリビューションガイドなし

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

dotnet/diagnostics のほかの issue

dotnet/diagnostics の issue をすべて見る

似ている issue

C++ の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。