EventStore / EventStore-Client-Dotnet

Dotnet Client SDK for the Event Store gRPC Client API written in C#
Other
147 stars 38 forks source link

DEV-125 - Fix partial append on error append to stream #283

Closed w1am closed 9 months ago

w1am commented 9 months ago

Fixed: Issue #250

This PR addresses 2 issues: It ensures that exceptions especially those arising from broken enumerables and gRPC operations are efficiently propagated back to the caller.

Following from the first point, calls to RequestStream.WriteAsync could throw an RpcException in scenarios where wrong credentials were provided. This occurs before RequestStream.CompleteAsync calls were made to append events, leading to unhandled exceptions. Therefore, the response.RequestStream in the TypedExceptionInterceptor was enhanced to address the race condition issue by ensuring exceptions are properly caught and translated. Credit goes to @josephcummings!

linear[bot] commented 9 months ago

DEV-125 AppendToStream can write a subset of events when errors occur.