etaty / rediscala

Non-blocking, Reactive Redis driver for Scala (with Sentinel support)
Apache License 2.0
790 stars 142 forks source link

Sentinel failover does not work #196

Open fr3akX opened 6 years ago

fr3akX commented 6 years ago

Problem: SentinelMonitoredRedisClient accepts a list of sentinels, but if any of sentinels becomes unavailable, then command fails.

Cause: results from sentinel backing actors are joined using Future.sequence, if single future fails, Future.sequence resulting future fails.

Solution: Don't fail futures where Future.sequence is used, but instead return default value where applicable.