sample-dotnet-core-cqrs-api icon indicating copy to clipboard operation
sample-dotnet-core-cqrs-api copied to clipboard

Ordering of DomainEventNotifications in OutboxMessages table

Open PavloPaitak opened this issue 1 year ago • 0 comments

Hi, I appreciate your work a lot 💯 👍

I have one question.

Why in DomainEventsDispatcher do you decide firstly to publish DomainEvents to the specific Handlers and then only save DomainEventNotification into OutboxMessages?

image

In this case, the first handled commands will save DomainEventNotifications last, and the last handled commands first. So the order is vice versa.

I saw that you also have OccurredOn but you do not use it during processing DomainEventNotifications in ProcessOutboxCommandHandler.

image

The only use of this property is in the Test OutboxMessagesHelper class.

image

In my case, after I used your code I can see that Messages in a Queue are in reverse order of how commands handlers and event handlers were processed.

Isn't it better to save DomainEventNotification into OutboxMessages first and then publish DomainEvents to the specific Handlers?

image

PavloPaitak avatar Nov 18 '23 08:11 PavloPaitak