Skip to content

Commit bf25f78

Browse files
committed
Set sequence number to unavailable by default
1 parent 70256bf commit bf25f78

File tree

1 file changed

+4
-1
lines changed
  • Source/Kernel/Grains/Observation/Reactors/Kernel

1 file changed

+4
-1
lines changed

Source/Kernel/Grains/Observation/Reactors/Kernel/Reactor.cs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,8 @@ public void Initialize(IEventSerializer eventSerializer)
2929
/// <inheritdoc/>
3030
public async Task<ObserverSubscriberResult> OnNext(IEnumerable<AppendedEvent> events)
3131
{
32+
var lastSuccessfullyHandledSequenceNumber = EventSequenceNumber.Unavailable;
33+
3234
foreach (var @event in events)
3335
{
3436
if (_eventMethodsByEventType.TryGetValue(@event.Context.EventType.Id, out var method))
@@ -38,12 +40,13 @@ public async Task<ObserverSubscriberResult> OnNext(IEnumerable<AppendedEvent> ev
3840
var content = _eventSerializer.Deserialize(@event);
3941
var task = (method.Invoke(this, [content, @event.Context]) as Task)!;
4042
await task;
43+
lastSuccessfullyHandledSequenceNumber = @event.Context.SequenceNumber;
4144
}
4245
catch (Exception exception)
4346
{
4447
return new(
4548
ObserverSubscriberState.Failed,
46-
@event.Context.SequenceNumber,
49+
lastSuccessfullyHandledSequenceNumber,
4750
exception.GetAllMessages(),
4851
exception.StackTrace ?? string.Empty);
4952
}

0 commit comments

Comments
 (0)