Skip to content

Fix #7074 report a single field error from aggregate resolver exceptions#9264

Open
michaelstaib wants to merge 1 commit intomainfrom
mst/issue-7074
Open

Fix #7074 report a single field error from aggregate resolver exceptions#9264
michaelstaib wants to merge 1 commit intomainfrom
mst/issue-7074

Conversation

@michaelstaib
Copy link
Member

Fixes #7074

Summary

  • Added a regression test that reproduces throwing an AggregateException with multiple GraphQLException inner exceptions from a single field resolver.
  • Updated resolver error reporting in MiddlewareContext to only surface the first field error for GraphQLException and AggregateException containers.
  • This aligns field-error behavior with one-error-per-field expectations.

Test Commands

  • dotnet test src/HotChocolate/Core/test/Execution.Tests/HotChocolate.Execution.Tests.csproj --filter "FullyQualifiedName~Issue7074ReproTests" --nologo
  • dotnet test src/HotChocolate/Core/test/Types.Mutations.Tests/HotChocolate.Types.Mutations.Tests.csproj --filter "FullyQualifiedName~ErrorMiddleware_Should_MapAggregateException_WhenRegistered" --nologo

Results

  • Both commands passed on net8.0, net9.0, and net10.0.

@github-actions
Copy link
Contributor

Fusion Gateway Performance Results

Progress: 0/6 benchmarks completed — this report updates as each job finishes.

Simple Composite Query

Req/s Err%
Constant 2 (50 VUs) pending pending
Ramping 2 (0-500-0 VUs) pending pending
Response Times
Min Med Avg P90 P95 Max
Constant 2 pending pending pending pending pending pending
Ramping 2 pending pending pending pending pending pending

Deep Recursion Query

Req/s Err%
Constant 2 (50 VUs) pending pending
Ramping 2 (0-500-0 VUs) pending pending
Response Times
Min Med Avg P90 P95 Max
Constant 2 pending pending pending pending pending pending
Ramping 2 pending pending pending pending pending pending

Variable Batching Throughput

Req/s Err%
Constant 2 (50 VUs) pending pending
Ramping 2 (0-500-0 VUs) pending pending
Response Times
Min Med Avg P90 P95 Max
Constant 2 pending pending pending pending pending pending
Ramping 2 pending pending pending pending pending pending

Runner 2 = benchmarking-2

Run 22499546705 • Commit f3ec2e7 • Fri, 27 Feb 2026 18:54:04 GMT

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Only one error should be returned per field

1 participant