Skip to content

Commit ee06cae

Browse files
committed
Bring back null ids that Raven persistence relies on
1 parent 3f41dfd commit ee06cae

3 files changed

Lines changed: 6 additions & 11 deletions

File tree

‎src/ServiceControl.AcceptanceTests/Recoverability/MessageFailures/When_a_retry_fails_to_be_sent.cs‎

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ class When_a_retry_fails_to_be_sent : AcceptanceTest
2727
[CancelAfter(180_000)]
2828
public async Task SubsequentBatchesShouldBeProcessed(CancellationToken cancellationToken = default)
2929
{
30-
FailedMessage decomissionedFailure = null, successfullyRetried = null;
30+
FailedMessageView decomissionedFailure = null, successfullyRetried = null;
3131

3232
CustomizeHostBuilder = hostBuilder =>
3333
{
@@ -56,9 +56,9 @@ await Define<MyContext>()
5656
return false;
5757
}
5858

59-
var decomissionedFailureResult = await this.TryGetSingle<FailedMessage>("/api/errors/", m => m.Id == ctx.DecommissionedEndpointUniqueMessageId && m.Status == FailedMessageStatus.Unresolved);
59+
var decomissionedFailureResult = await this.TryGetSingle<FailedMessageView>("/api/errors/", m => m.Id == ctx.DecommissionedEndpointUniqueMessageId && m.Status == FailedMessageStatus.Unresolved);
6060
decomissionedFailure = decomissionedFailureResult;
61-
var successfullyRetriedResult = await this.TryGetSingle<FailedMessage>("/api/errors/", m => m.Id == ctx.MessageThatWillFailUniqueMessageId && m.Status == FailedMessageStatus.Resolved);
61+
var successfullyRetriedResult = await this.TryGetSingle<FailedMessageView>("/api/errors/", m => m.Id == ctx.MessageThatWillFailUniqueMessageId && m.Status == FailedMessageStatus.Resolved);
6262
successfullyRetried = successfullyRetriedResult;
6363
return decomissionedFailureResult && successfullyRetriedResult;
6464
})

‎src/ServiceControl.Persistence/ExternalIntegrations/ExternalIntegrationDispatchRequest.cs‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ namespace ServiceControl.ExternalIntegrations
22
{
33
public class ExternalIntegrationDispatchRequest
44
{
5-
public required string Id { get; set; }
5+
public string? Id { get; set; }
66
public required object DispatchContext;
77
}
88
}

‎src/ServiceControl.Persistence/FailedMessage.cs‎

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -8,17 +8,12 @@ public class FailedMessage : IHaveStatus
88
{
99
public FailedMessage()
1010
{
11-
// these ID fields *should* be marked as required
12-
// but there seem to be some wire usages of this type for
13-
// deserialisation that omit the UniqueMessageId on output
14-
Id = string.Empty;
15-
UniqueMessageId = string.Empty;
1611
ProcessingAttempts = [];
1712
FailureGroups = [];
1813
}
1914

20-
public required string Id { get; set; }
21-
public string UniqueMessageId { get; set; }
15+
public string? Id { get; set; }
16+
public required string UniqueMessageId { get; set; }
2217

2318
public List<ProcessingAttempt> ProcessingAttempts { get; set; }
2419
public List<FailureGroup> FailureGroups { get; set; }

0 commit comments

Comments
 (0)