Loyal-Young opened a new issue, #7056:
URL: https://github.com/apache/rocketmq-dashboard/issues/7056

   ## Problem
   
   `MybatisPlusAuditRepository.deleteBefore` selects up to 500 expired IDs per 
batch and calls `deleteByIds`. It currently stops when the affected-row count 
is smaller than the batch size. Another cleanup worker can remove one of the 
selected rows between those operations, making the affected-row count smaller 
even though the select returned a full batch and later expired rows remain.
   
   For example, a two-row select returns IDs 1 and 2, another worker removes ID 
2, and this worker deletes only ID 1. It stops because `1 < 2`, leaving ID 3 
and later rows for a future invocation. A scheduled retention sweep can thus 
end early under concurrent cleanup.
   
   ## Expected
   
   Continue while the **selected batch** was full; stop when the select itself 
is short (or empty), while retaining the existing maximum-batch bound. Report 
the actual number of rows this invocation deleted.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to