[ISSUE #10244] Trigger MemoryConsumerOrderInfoManager autoClean periodically#10272
[ISSUE #10244] Trigger MemoryConsumerOrderInfoManager autoClean periodically#10272kobe-yang wants to merge 1 commit intoapache:developfrom
Conversation
|
Hi maintainers, this is my first contribution here. Could you please help approve the workflows so the required checks can start running? Thanks! |
|
Thanks for the contribution. A couple of concerns after reviewing the code:
|
|
Thanks for the review and for pointing this out. After re-checking the current implementation, I agree that autoClean() is already triggered periodically by PopLiteLockManager, and the missing-group case is already handled in QueueLevelConsumerManager.autoClean(). That means this PR does not fix a real gap, and the scheduling change indeed introduces unnecessary concurrency risk. I will close this PR. Thanks again for the careful review. |
Summary
This PR fixes the missing periodic cleanup for
MemoryConsumerOrderInfoManager.Previously, the cleanup logic already existed in
autoClean(), including the case where the subscription group no longer exists, but it was not triggered periodically for the in-memory manager path.Changes
PopLiteMessageProcessorPopLiteLockManagerfocused on lock timeout cleanupWhy
The issue is not in the cleanup rule itself, but in the missing trigger path for
MemoryConsumerOrderInfoManager.autoClean().Tests
git diff --checkmvn -pl broker -am -Dmaven.repo.local=/tmp/rocketmq-m2 -Dtest=ConsumerOrderInfoManagerTest -DfailIfNoTests=false -Dsurefire.failIfNoSpecifiedTests=false compiler:compile compiler:testCompile surefire:test