Преглед на файлове

修复Redis hash结构数字自增/减返回值异常问题

woody преди 8 месеца
родител
ревизия
098223d8d0
променени са 1 файла, в които са добавени 4 реда и са изтрити 3 реда
  1. 4 3
      framework-redis/src/main/java/com/chelvc/framework/redis/context/RedisHashHolder.java

+ 4 - 3
framework-redis/src/main/java/com/chelvc/framework/redis/context/RedisHashHolder.java

@@ -34,9 +34,10 @@ public final class RedisHashHolder {
     /**
      * Redis带过期时间HINCRBY脚本
      */
-    private static final String HINCRBY_DURATION_SCRIPT = "if redis.call('HINCRBY', KEYS[1], ARGV[1], ARGV[2]) then " +
-            "if redis.call('TTL', KEYS[1]) < tonumber(ARGV[3]) then redis.call('EXPIRE', KEYS[1], ARGV[3]) end " +
-            "return 1 end return 0";
+    private static final String HINCRBY_DURATION_SCRIPT =
+            "local value = redis.call('HINCRBY', KEYS[1], ARGV[1], ARGV[2]) " +
+                    "if redis.call('TTL', KEYS[1]) < tonumber(ARGV[3]) then " +
+                    "redis.call('EXPIRE', KEYS[1], ARGV[3]) end return value";
 
     /**
      * Redis带过期时间HMSET脚本SHA