wangyunpeng 8 часов назад
Родитель
Сommit
19e436fa55

+ 7 - 0
api-module/src/main/java/com/tzld/piaoquan/api/service/strategy/impl/ThirdPartyPushMessageStrategyV1.java

@@ -154,8 +154,10 @@ public class ThirdPartyPushMessageStrategyV1 implements ReplyStrategyService {
         // 循环获取锁,锁5s,每获取一次锁,未获取到锁,等待1s,最多等待10次
         int tryCount = 0;
         String LOCK_KEY = "insertSmallData:" + bucketDataParam.getGhId();
+        boolean locked = false;
         while (tryCount < 10) {
             if (redisUtils.tryLock(LOCK_KEY, "1", 5)) {
+                locked = true;
                 break;
             } else {
                 try {
@@ -166,6 +168,11 @@ public class ThirdPartyPushMessageStrategyV1 implements ReplyStrategyService {
                 tryCount++;
             }
         }
+        // 未获取到锁,直接返回,避免重复入库
+        if (!locked) {
+            log.error("ThirdPartyPushMessageStrategyV1 insertSmallData 获取锁失败,放弃入库,ghId:" + bucketDataParam.getGhId());
+            return;
+        }
         try {
             for (String key : keyedSet) {
                 if ("base".equals(key)) {