穿云 3 miesięcy temu
rodzic
commit
8064de2a5e

+ 4 - 0
dbsyncer-common/src/main/java/org/dbsyncer/common/util/StringUtil.java

@@ -47,6 +47,10 @@ public abstract class StringUtil {
         return StringUtils.isNotBlank(cs);
     }
 
+    public static String getIfBlank(final String str, final String defaultStr) {
+        return isBlank(str) ? defaultStr : str;
+    }
+
     public static String[] split(String str, String separatorChars) {
         return StringUtils.split(str, separatorChars);
     }

+ 1 - 1
dbsyncer-manager/src/main/java/org/dbsyncer/manager/impl/FullPuller.java

@@ -151,7 +151,7 @@ public final class FullPuller extends AbstractPuller implements ApplicationListe
         meta.setUpdateTime(Instant.now().toEpochMilli());
         Map<String, String> snapshot = meta.getSnapshot();
         snapshot.put(ParserEnum.PAGE_INDEX.getCode(), String.valueOf(task.getPageIndex()));
-        snapshot.put(ParserEnum.CURSOR.getCode(), StringUtil.join(task.getCursors(), ","));
+        snapshot.put(ParserEnum.CURSOR.getCode(), StringUtil.getIfBlank(StringUtil.join(task.getCursors(), StringUtil.COMMA), StringUtil.EMPTY));
         snapshot.put(ParserEnum.TABLE_GROUP_INDEX.getCode(), String.valueOf(task.getTableGroupIndex()));
         profileComponent.editConfigModel(meta);
     }

+ 1 - 0
dbsyncer-parser/src/main/java/org/dbsyncer/parser/flush/impl/BufferActuatorRouter.java

@@ -57,6 +57,7 @@ public final class BufferActuatorRouter implements DisposableBean {
                 });
                 return processor;
             });
+            return;
         }
         offer(generalBufferActuator, event);
     }

+ 2 - 2
dbsyncer-parser/src/main/java/org/dbsyncer/parser/model/Meta.java

@@ -3,8 +3,8 @@ package org.dbsyncer.parser.model;
 import org.dbsyncer.parser.enums.MetaEnum;
 import org.dbsyncer.sdk.constant.ConfigConstant;
 
+import java.util.HashMap;
 import java.util.Map;
-import java.util.concurrent.ConcurrentHashMap;
 import java.util.concurrent.atomic.AtomicLong;
 
 /**
@@ -50,7 +50,7 @@ public class Meta extends ConfigModel {
         this.total = new AtomicLong(0);
         this.success = new AtomicLong(0);
         this.fail = new AtomicLong(0);
-        this.snapshot = new ConcurrentHashMap<>();
+        this.snapshot = new HashMap<>();
         this.beginTime = 0L;
         this.endTime = 0L;
     }