Skip to content

Commit 6f6012a

Browse files
committed
Fix loop in RetentionResponder.
1 parent f427ff5 commit 6f6012a

1 file changed

Lines changed: 10 additions & 2 deletions

File tree

src/Automation/Responders/RetentionResponder.cs

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -135,10 +135,18 @@ public async Task ProcessMessage(IMessage originalMessage, CancellationToken tok
135135
break;
136136
}
137137

138-
foreach (var message in messages)
138+
// Use the oldest message in this batch as the next anchor to avoid
139+
// repeatedly retrieving the same page due to ordering/overlap.
140+
var oldestInBatch = messages.MinBy(m => m.Id);
141+
if (fromMessage != null && oldestInBatch.Id >= fromMessage.Id)
139142
{
140-
fromMessage = message;
143+
Console.WriteLine("No pagination progress detected; stopping.");
144+
break;
145+
}
146+
fromMessage = oldestInBatch;
141147

148+
foreach (var message in messages)
149+
{
142150
if (deleted >= requestedCount)
143151
{
144152
break;

0 commit comments

Comments
 (0)