diff --git a/Core/Cleipnir.ResilientFunctions/Queuing/QueueManager.cs b/Core/Cleipnir.ResilientFunctions/Queuing/QueueManager.cs index 74ef9eaa..eaf8b7bc 100644 --- a/Core/Cleipnir.ResilientFunctions/Queuing/QueueManager.cs +++ b/Core/Cleipnir.ResilientFunctions/Queuing/QueueManager.cs @@ -227,7 +227,11 @@ private async Task ProcessMessages(IReadOnlyList messages) if (idempotencyKey != null && !_idempotencyKeys.Add(idempotencyKey, position)) { - await _messageClearer.Clear([position]); + lock (_lock) + { + _deliveredPositions.Add(position); + _effect.FlushlessUpsert(DeliveredPositionsId, _deliveredPositions.ToList(), alias: null); + } continue; }