dotnet / dotnet/aspnetcore

[Known Build Error] TestServerTests.LongPollingWorks - ObjectDisposedException in OnDisconnectedAsync during shutdown

Open
#65,702 2 comments 0 reactions 1 assignee Claimed by @adityamandaleeka View on GitHub
area-signalr Known Build Error
Dominant language
C#
Stars
38.4k
Forks
10.9k
Avg merge
2d 10h
Merged PRs (30d)
281

Description

## Build Information
Build: https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_build/results?buildId=1325148
Build error leg or test failing: Tests: Helix x64 Subset 2 / Microsoft.AspNetCore.SignalR.Client.Tests--net11.0
Pull request: https://github.com/dotnet/aspnetcore/pull/65694

## Error Message

```json
{
"ErrorMessage": "Error when dispatching 'OnDisconnectedAsync' on hub",
"BuildRetry": true,
"ExcludeConsoleLog": false
}
```

## Description

`TestServerTests.LongPollingWorks` fails intermittently when the test host shuts down and `OnDisconnectedAsync` races with `IServiceProvider` disposal. The `HttpConnectionDispatcher.ProcessDeleteAsync` fire-and-forgets server-side connection disposal, so when the host tears down, `DefaultHubDispatcher.OnDisconnectedAsync` can attempt to call `CreateAsyncScope()` on an already-disposed `ServiceProvider`, throwing `ObjectDisposedException`.

**Stack trace:**
```
System.ObjectDisposedException: Cannot access a disposed object.
Object name: 'IServiceProvider'.
at Microsoft.Extensions.DependencyInjection.ServiceLookup.ThrowHelper.ThrowObjectDisposedException()
at Microsoft.Extensions.DependencyInjection.ServiceProvider.CreateScope()
at Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceProviderEngineScope.CreateScope()
at Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.CreateAsyncScope(IServiceScopeFactory serviceScopeFactory)
at Microsoft.AspNetCore.SignalR.Internal.DefaultHubDispatcher`1.OnDisconnectedAsync(HubConnectionContext connection, Exception exception)
at Microsoft.AspNetCore.SignalR.HubConnectionHandler`1.RunHubAsync(HubConnectionContext connection)
```

**Fix in progress:** https://github.com/dotnet/aspnetcore/pull/65457 catches `ObjectDisposedException` at the DI boundary in `DefaultHubDispatcher.OnDisconnectedAsync`.

### Known issue validation
**Build: :mag_right:** https://dev.azure.com/dnceng-public/public/_build/results?buildId=1325148
**Error message validated:** `[Error when dispatching 'OnDisconnectedAsync' on hub`]
**Result validation:** :white_check_mark: Known issue matched with the provided build.
**Validation performed at:** 3/7/2026 10:12:12 PM UTC

### Report
|Build|Repository|Step Name|Console log|Pull Request|
|---|---|---|---|---|
|[1596556](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1596556)|dotnet/aspnetcore|Run E2E tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1596556/logs/38)||
|[1593683](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1593683)|dotnet/aspnetcore|Run E2E tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1593683/logs/38)|dotnet/aspnetcore#69250|
|[1593346](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1593346)|dotnet/aspnetcore|Run E2E tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1593346/logs/38)|dotnet/aspnetcore#69250|
|[1591601](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1591601)|dotnet/aspnetcore|Run E2E tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1591601/logs/38)|dotnet/aspnetcore#69209|
|[1590117](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1590117)|dotnet/aspnetcore|Run E2E tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1590117/logs/38)||
|[1579746](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1579746)|dotnet/aspnetcore|Run E2E tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1579746/logs/14)||
|[1576875](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1576875)|dotnet/aspnetcore|Run E2E tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1576875/logs/13)|dotnet/aspnetcore#68958|
|[1575159](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1575159)|dotnet/aspnetcore|Run E2E tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1575159/logs/37)|dotnet/aspnetcore#68922|
|[1566426](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1566426)|dotnet/aspnetcore|Run E2E tests|[Log](https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/build/builds/1566426/logs/14)|dotnet/aspnetcore#60884|

|Build|Repository|Test|Pull Request|
|---|---|---|---|
|[1587176](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1587176)|dotnet/aspnetcore|[Microsoft.AspNetCore.SignalR.Tests.HubConnectionHandlerTests.CanSetMessageBufferSizeOnServer](https://dev.azure.com/dnceng-public/public/_build/results?buildId=1587176&view=ms.vss-test-web.build-test-results-tab&runId=43803596&resultId=108195)||
#### Summary
|24-Hour Hit Count|7-Day Hit Count|1-Month Count|
|---|---|---|
|1|6|10|

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.