You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This commit was created on GitHub.com and signed with GitHub’s verified signature.
Added
A batch append, a unit of work and AppendMany can now carry one concurrency guard for each stream of the same event source, for example a guard on REPORT / SendApprovals and another on REPORT / Corrections / <id>. The kernel validates them all before writing anything, so the batch stays atomic. Events for several streams of one event source previously kept only the first stream's guard, or failed with IncompatibleConcurrencyScopesForEventSource. (#4818)
New AppendMany overloads on IEventSequence take a list of event source id and concurrency scope pairs, so one event source id can appear with several scopes. (#4818)
A concurrency violation now reports which guard failed (ScopeIndex and Scope). (#4818)
Changed
The .NET client sends several guards for one event source only to a kernel that advertises support for them. Against an older kernel it keeps refusing with IncompatibleConcurrencyScopesForEventSource, and never drops a guard. (#4818)