You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@rocketmq.apache.org by pi...@apache.org on 2023/01/19 02:09:10 UTC

[rocketmq-mqtt] branch main updated: clean offset

This is an automated email from the ASF dual-hosted git repository.

pingww pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/rocketmq-mqtt.git


The following commit(s) were added to refs/heads/main by this push:
     new 3c93fcb  clean offset
     new eadd10c  Merge pull request #176 from pingww/main
3c93fcb is described below

commit 3c93fcb843010b63d22a8a57a5dd2ac6259cb6b6
Author: pingww <pi...@gmail.com>
AuthorDate: Wed Jan 18 15:43:59 2023 +0800

    clean offset
---
 .../org/apache/rocketmq/mqtt/cs/session/loop/SessionLoopImpl.java   | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/mqtt-cs/src/main/java/org/apache/rocketmq/mqtt/cs/session/loop/SessionLoopImpl.java b/mqtt-cs/src/main/java/org/apache/rocketmq/mqtt/cs/session/loop/SessionLoopImpl.java
index d37dd99..560fc52 100644
--- a/mqtt-cs/src/main/java/org/apache/rocketmq/mqtt/cs/session/loop/SessionLoopImpl.java
+++ b/mqtt-cs/src/main/java/org/apache/rocketmq/mqtt/cs/session/loop/SessionLoopImpl.java
@@ -523,6 +523,9 @@ public class SessionLoopImpl implements SessionLoop {
     private void persistAllOffset(boolean needSleep) {
         try {
             for (Session session : sessionMap.values()) {
+                if (session.isClean()) {
+                    continue;
+                }
                 if (persistOffset(session) && needSleep) {
                     Thread.sleep(5L);
                 }
@@ -534,6 +537,9 @@ public class SessionLoopImpl implements SessionLoop {
 
     private boolean persistOffset(Session session) {
         try {
+            if (session.isClean()) {
+                return true;
+            }
             if (!session.getPersistOffsetFlag()) {
                 return false;
             }