From 674ed7c228a5693b65fbb1851e014809df77d55e Mon Sep 17 00:00:00 2001 From: alexpeelman Date: Tue, 20 Aug 2024 18:08:48 +0200 Subject: [PATCH] GH-9401: RedisLockRegistry: use `lock()` instead of `tryLock()` for lifecycle Fixes: #9401 Switched `tryLock()` with `lock()` in `RedisLockRegistry.runRedisMessageListenerContainer()` method for correct synchronization. (cherry picked from commit 07085a17ae3baef39e00d4f016de36b84aa9ece3) --- .../integration/redis/util/RedisLockRegistry.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/spring-integration-redis/src/main/java/org/springframework/integration/redis/util/RedisLockRegistry.java b/spring-integration-redis/src/main/java/org/springframework/integration/redis/util/RedisLockRegistry.java index 59560f59de..fe881308a0 100644 --- a/spring-integration-redis/src/main/java/org/springframework/integration/redis/util/RedisLockRegistry.java +++ b/spring-integration-redis/src/main/java/org/springframework/integration/redis/util/RedisLockRegistry.java @@ -86,6 +86,7 @@ import org.springframework.util.ReflectionUtils; * @author Eddie Cho * @author Myeonghyeon Lee * @author Roman Zabaluev + * @author Alex Peelman * * @since 4.0 * @@ -658,7 +659,7 @@ public final class RedisLockRegistry implements ExpirableLockRegistry, Disposabl } private void runRedisMessageListenerContainer() { - RedisLockRegistry.this.lock.tryLock(); + RedisLockRegistry.this.lock.lock(); try { if (!(RedisLockRegistry.this.isRunningRedisMessageListenerContainer && RedisLockRegistry.this.redisMessageListenerContainer != null