Open hungphan227 opened 3 weeks ago
One issue I detected is that when one node in cluster is down, James would not be able to upload redis lua script
One issue I detected is that when one node in cluster is down, James would not be able to upload redis lua script
My debug with lettuce code:
The method .scriptLoad
was executed in all nodes of the cluster (both all master + slave)
Then one node down -> scriptLoad will fail
ref: https://github.com/redis/lettuce/issues/590 io.lettuce.core.cluster.RedisAdvancedClusterAsyncCommandsImpl#scriptLoad io.lettuce.core.cluster.RedisAdvancedClusterAsyncCommandsImpl#executeOnNodes
I posted a question in stackoverflow
I think it's better to open an issue on the lettuce backlog, asking their community directly?
Just a design decision regarding lettuce and redis. Honestly not a blocker, if it fails we just run without redis until it's back up.
Why
James should be able to adapt and work normally when redis cluster change. For example, if one node (master or slave) in redis cluster is down, James should be able to detect, adapt new cluster structure to work normally.
How
Enable automatic topology update for redis client
DoD
Tests for RedisRateLimiter and RedisHealthCheck