ARTICLE AD BOX
Environment
- Redisson version: 3.11.0
- Redis deployment: Redis Cluster (3 master + 3 slave)
- Client creation: Redisson.create(config) with useClusterServers()
- scanInterval explicitly set to 2000ms in config
- Problem description When a Redis node host machine crashes and later recovers (cluster completes failover and elects new master), the Redisson client keeps throwing: org.redisson.client.RedisNodeNotFoundException: Node: NodeSource [slot=null, addr=null, redisClient=null, redirect=null, entry=null] hasn't been discovered yet The client never recovers automatically. The only way to restore service is to restart the application. What I've checked - scanInterval is configured (2000ms), so I expected periodic CLUSTER NODES scanning to refresh the topology. - However, the cached topology inside the client never updates after node recovery. - If I try to "rebuild" the client programmatically (create a new RedissonClient), it still seems to hit some internal cached state rather than doing a full fresh initialization like an application restart does. Questions 1. Should scanInterval alone be sufficient for the client to auto-detect the new master after cluster failover? 2. If not, is there a programmatic way to force a full topology refresh without restarting the JVM? 3. Is this a known issue in 3.11.0 that was fixed in later versions? Expected behavior After the Redis cluster recovers from node failure, the Redisson client should automatically detect the new topology and resume normal operations without requiring an application restart.