Клиент кластера Redisson не восстанавливается после сбоя узла (RedisNodeNotFoundException) до перезапуска приложения.JAVA

Программисты JAVA общаются здесь
Anonymous
Клиент кластера Redisson не восстанавливается после сбоя узла (RedisNodeNotFoundException) до перезапуска приложения.

Сообщение Anonymous »

Среда
- Версия Redisson: 3.11.0
- Развертывание Redis: Redis Cluster (3 главных + 3 подчиненных)
- Создание клиента: Redisson.create(config) с useClusterServers()
- ScanInterval явно установлен на 2000 мс в конфигурации
- 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.

Вернуться в «JAVA»