Prevent possible concurrency issues in ParallelRequestBuilder

This commit is contained in:
Mark van Renswoude 2023-04-06 07:44:45 +02:00
parent 1f70b2fa82
commit 6cf2314ae0
1 changed files with 6 additions and 4 deletions

View File

@ -378,14 +378,16 @@ namespace Tapeti.Flow.Default
if (convergeMethod.Method.DeclaringType != context.HandlerContext.Controller.GetType())
throw new YieldPointException("Converge method must be in the same controller class");
await Task.WhenAll(requests.Select(requestInfo =>
flowProvider.SendRequest(
context,
foreach (var requestInfo in requests)
{
await flowProvider.SendRequest(
context,
requestInfo.Message,
requestInfo.ResponseHandlerInfo,
convergeMethod.Method.Name,
convergeMethodSync,
false)));
false);
}
await context.Store(requests.Any(i => i.ResponseHandlerInfo.IsDurableQueue));
});