Skip to content

Commit b46045b

Browse files
author
Greg Bielleman
committed
Fix MessageFailedPublisher failing on deleted FailedMessage
In some scenarios the ExpiredDocumentCleaner process could remove a FailedMessage prior to it being dispatched.
1 parent a992ca2 commit b46045b

File tree

1 file changed

+3
-2
lines changed

1 file changed

+3
-2
lines changed

src/ServiceControl/ExternalIntegrations/MessageFailedPublisher.cs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,9 +19,10 @@ protected override DispatchContext CreateDispatchRequest(MessageFailed @event)
1919

2020
protected override IEnumerable<object> PublishEvents(IEnumerable<DispatchContext> contexts, IDocumentSession session)
2121
{
22+
2223
var documentIds = contexts.Select(x => x.FailedMessageId).Cast<ValueType>().ToArray();
23-
var failedMessageData = session.Load<FailedMessage>(documentIds);
24-
return failedMessageData.Select(x => x.ToEvent());
24+
var failedMessageData = session.Load<FailedMessage>(documentIds);
25+
return failedMessageData.Where(p => p != null).Select(x => x.ToEvent());
2526
}
2627

2728
public class DispatchContext

0 commit comments

Comments
 (0)