From 569ed7711dfbe8e0368706befa9e0d51f91c1d55 Mon Sep 17 00:00:00 2001 From: Nikita Koksharov Date: Thu, 29 Aug 2024 07:18:03 +0300 Subject: [PATCH] Fixed - 'hmget' should be instead of 'hget' in RMapCache.getAllWithTTLOnly() method. #6128 --- redisson/src/main/java/org/redisson/RedissonMapCache.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/redisson/src/main/java/org/redisson/RedissonMapCache.java b/redisson/src/main/java/org/redisson/RedissonMapCache.java index e818b45ef..30c294197 100644 --- a/redisson/src/main/java/org/redisson/RedissonMapCache.java +++ b/redisson/src/main/java/org/redisson/RedissonMapCache.java @@ -1684,8 +1684,9 @@ public class RedissonMapCache extends RedissonMap implements RMapCac "local currentTime = tonumber(table.remove(ARGV, 1)); " + // index is the first parameter "local hasExpire = #expireHead == 2 and tonumber(expireHead[2]) <= currentTime; " + "local map = {}; " + - "for i = 1, #ARGV, 1 do " + - " local value = redis.call('hget', KEYS[1], ARGV[i]); " + + "local values = redis.call('hmget', KEYS[1], unpack(ARGV));" + + "for i = 1, #values, 1 do " + + " local value = values[i]; " + " map[i] = false;" + " if value ~= false then " + " local key = ARGV[i]; " +