Skip to content

Aws ElastiCache: Master replica, once initial call to master for ROLE fails it then it never tries to rediscover MASTER #3143

Open
@amaan75

Description

@amaan75

Hi, I am using lettuce with spring data Redis
LettuceCore : 6.1.4.RELEASE
spring-data-redis: 2.5.4
AWS elasticache for Redis 6.X (non clustered mode)
while connecting with Redis we supply the client 2 endpoints 1 reader endpoint and a primary endpoint.
we recently encountered an issue where while connecting to this cluster the role command to primary failed the first time because of some transient network issue and then even though the network became stable our set and get commands both continued to failed because we had set ReadFromUpstream as a read preference.

Is there any plans to change this behaviour?
Ideally I would like my container to retry figuring out if the master is available even if it wasn't able to do so the first time.

This is easily reproducible too, I setup a Redis with 1 master and 2 replicas via docker and keep the master down during the time my service tries to connect to Redis the first time and post that it stays that way.

My understanding is that the issue comes from the fact that once this masterReplicaConnectionProvider has the knownNodes set the first time and never changes afterwords.

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions