Skip to content

Commit

Permalink
stop new payload creation for continuing app
Browse files Browse the repository at this point in the history
Signed-off-by: Neil South <[email protected]>
  • Loading branch information
neildsouth committed Oct 4, 2023
1 parent d264585 commit 26b3138
Show file tree
Hide file tree
Showing 2 changed files with 22 additions and 11 deletions.
3 changes: 3 additions & 0 deletions src/WorkflowManager/Logging/Log.500000.Messaging.cs
Original file line number Diff line number Diff line change
Expand Up @@ -70,5 +70,8 @@ public static partial class Log

[LoggerMessage(EventId = 200016, Level = LogLevel.Debug, Message = "Export complete message received.")]
public static partial void ExportCompleteReceived(this ILogger logger);

[LoggerMessage(EventId = 200017, Level = LogLevel.Debug, Message = "Workflow continuation event so not creating payload.")]
public static partial void WorkflowContinuation(this ILogger logger);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -73,21 +73,29 @@ public async Task ReceiveWorkflowPayload(MessageReceivedEventArgs message)
return;
}

var payload = await PayloadService.CreateAsync(requestEvent);
if (payload is null)
if (string.IsNullOrWhiteSpace(requestEvent.WorkflowInstanceId) || string.IsNullOrWhiteSpace(requestEvent.TaskId))
{
Logger.WorkflowRequestRequeuePayloadCreateError(message.Message.MessageId);
await _messageSubscriber.RequeueWithDelay(message.Message);

return;
}
var payload = await PayloadService.CreateAsync(requestEvent);
if (payload is null)
{
Logger.WorkflowRequestRequeuePayloadCreateError(message.Message.MessageId);
await _messageSubscriber.RequeueWithDelay(message.Message);

if (!await WorkflowExecuterService.ProcessPayload(requestEvent, payload))
{
Logger.WorkflowRequestRequeuePayloadProcessError(message.Message.MessageId);
await _messageSubscriber.RequeueWithDelay(message.Message);
return;
}

return;
if (!await WorkflowExecuterService.ProcessPayload(requestEvent, payload))
{
Logger.WorkflowRequestRequeuePayloadProcessError(message.Message.MessageId);
await _messageSubscriber.RequeueWithDelay(message.Message);

return;
}
}
else
{
Logger.WorkflowContinuation();
}

_messageSubscriber.Acknowledge(message.Message);
Expand Down

0 comments on commit 26b3138

Please sign in to comment.