From a5502b6744bf86d3550b80548212a087bfe8fa20 Mon Sep 17 00:00:00 2001 From: Nikita Koksharov Date: Fri, 30 Sep 2022 09:23:18 +0300 Subject: [PATCH] Fixed - RedissonBaseLock throws NPE. #4555 --- redisson/src/main/java/org/redisson/RedissonBaseLock.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/redisson/src/main/java/org/redisson/RedissonBaseLock.java b/redisson/src/main/java/org/redisson/RedissonBaseLock.java index 3f23909a8c2..b767b03148c 100644 --- a/redisson/src/main/java/org/redisson/RedissonBaseLock.java +++ b/redisson/src/main/java/org/redisson/RedissonBaseLock.java @@ -207,7 +207,12 @@ protected void cancelExpirationRenewal(Long threadId) { protected RFuture evalWriteAsync(String key, Codec codec, RedisCommand evalCommandType, String script, List keys, Object... params) { MasterSlaveEntry entry = commandExecutor.getConnectionManager().getEntry(getRawName()); - int availableSlaves = entry.getAvailableSlaves(); + int availableSlaves; + if (entry != null) { + availableSlaves = entry.getAvailableSlaves(); + } else { + availableSlaves = 0; + } CommandBatchService executorService = createCommandBatchService(availableSlaves); RFuture result = executorService.evalWriteAsync(key, codec, evalCommandType, script, keys, params);