From 08e998a3dea79b0a9520654a248bf228d7339206 Mon Sep 17 00:00:00 2001 From: Kevin Scaldeferri <kevin@scaldeferri.com> Date: Tue, 22 Nov 2022 15:00:17 -0800 Subject: [PATCH] Fix bug in trySetPermitsAsync of RedissonPermitExpirableSemaphore Fixes https://github.com/redisson/redisson/issues/4678 via the analogous change to https://github.com/redisson/redisson/commit/011be4160aeb5e23510e6715c16531ccaea07db9 in RedissonSemaphore Signed-off-by: Kevin Scaldeferri <kevin@scaldeferri.com> --- .../java/org/redisson/RedissonPermitExpirableSemaphore.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/redisson/src/main/java/org/redisson/RedissonPermitExpirableSemaphore.java b/redisson/src/main/java/org/redisson/RedissonPermitExpirableSemaphore.java index 76ac56888..f2b36ccdb 100644 --- a/redisson/src/main/java/org/redisson/RedissonPermitExpirableSemaphore.java +++ b/redisson/src/main/java/org/redisson/RedissonPermitExpirableSemaphore.java @@ -654,7 +654,7 @@ public class RedissonPermitExpirableSemaphore extends RedissonExpirable implemen public RFuture<Boolean> trySetPermitsAsync(int permits) { return commandExecutor.evalWriteAsync(getRawName(), LongCodec.INSTANCE, RedisCommands.EVAL_BOOLEAN, "local value = redis.call('get', KEYS[1]); " + - "if (value == false or value == 0) then " + "if (value == false) then " + "redis.call('set', KEYS[1], ARGV[1]); " + "redis.call('publish', KEYS[2], ARGV[1]); " + "return 1;"