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]
