Skip to content

[ci-scan] Test failure: COM Dynamic finalizer double-unadvises connection point #132947

Description

@awakecoding

Important

The submitting account does not have permission to apply upstream labels. The area label was assigned automatically; a maintainer still needs to add Known Build Error, blocking-clean-ci, os-windows, and arch-x64 for Build Analysis to recognize this issue.

Build Information

Build: https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_build/results?buildId=1573972
Build error leg or test failing: coreclr windows x64 Checked no_tiered_compilation @ Windows.Amd64.Open.rt - Interop/COM/Dynamic/Dynamic/Dynamic.cmd
Pull request: #132922

KBE authoring guidance (ci-failure-scan)
  • Error Details is for readers. The exception and stack trace below are copied from the Helix console 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.
  • BuildRetry is false because this is a product/test cleanup race rather than an infrastructure failure.
  • ExcludeConsoleLog is false because the assertion is present in the Helix console log.

Error Details

Process terminated.
Assertion failed.
Can not unadvise from empty connection point
   at System.Runtime.InteropServices.ComEventsSink.Unadvise() in /_/src/libraries/Common/src/System/Runtime/InteropServices/ComEventsSink.cs:line 261
   at System.Runtime.InteropServices.ComEventsSink.RemoveAll(ComEventsSink sinks) in /_/src/libraries/Common/src/System/Runtime/InteropServices/ComEventsSink.cs:line 50
   at Microsoft.CSharp.RuntimeBinder.ComInterop.ComEventSinksContainer.DisposeAll() in /_/src/libraries/Microsoft.CSharp/src/Microsoft/CSharp/RuntimeBinder/ComInterop/ComEventSinksContainer.cs:line 65
   at Microsoft.CSharp.RuntimeBinder.ComInterop.ComEventSinksContainer.Finalize() in /_/src/libraries/Microsoft.CSharp/src/Microsoft/CSharp/RuntimeBinder/ComInterop/ComEventSinksContainer.cs:line 71
   at System.GC.RunFinalizers()

The finalizer attempted to call RemoveAll after the event sink had already been unadvised. Build Analysis reports a 0.03% failure rate for this test. The PR that encountered the failure changes NativeAOT/ReadyToRun dependency-analysis tooling and does not modify the runtime, Microsoft.CSharp COM binder, or this test.

Error Message

{
  "ErrorMessage": "Can not unadvise from empty connection point",
  "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

Note

This issue draft was prepared with GitHub Copilot assistance and reviewed before submission.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    Status
    No status

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions