This is an automated email from the ASF dual-hosted git repository. jinrongtong pushed a commit to branch develop in repository https://gitbox.apache.org/repos/asf/rocketmq.git
The following commit(s) were added to refs/heads/develop by this push: new fbe9f733b9 [ISSUE #9721] Fix TimerDequeueGetService thread not exiting after shutdown fbe9f733b9 is described below commit fbe9f733b96b3c28d789bf1b81108cb490e7d83d Author: rongtong <jinrongton...@mails.ucas.ac.cn> AuthorDate: Sun Sep 21 09:56:23 2025 +0800 [ISSUE #9721] Fix TimerDequeueGetService thread not exiting after shutdown - Add isRunningDequeue() check in checkDequeueLatch while loop - Exit loop immediately when service is stopped to avoid thread blocking - Ensure moveReadTime is not executed during shutdown process - Improve system stability and reliability --- .../main/java/org/apache/rocketmq/store/timer/TimerMessageStore.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/store/src/main/java/org/apache/rocketmq/store/timer/TimerMessageStore.java b/store/src/main/java/org/apache/rocketmq/store/timer/TimerMessageStore.java index f021237751..80184422e0 100644 --- a/store/src/main/java/org/apache/rocketmq/store/timer/TimerMessageStore.java +++ b/store/src/main/java/org/apache/rocketmq/store/timer/TimerMessageStore.java @@ -953,6 +953,11 @@ public class TimerMessageStore { } int checkNum = 0; while (true) { + if (!isRunningDequeue()) { + LOGGER.info("Not Running dequeue, skip checkDequeueLatch for delayedTime:{}", delayedTime); + break; + } + if (dequeuePutQueue.size() > 0 || !checkStateForGetMessages(AbstractStateService.WAITING) || !checkStateForPutMessages(AbstractStateService.WAITING)) {