Skip to content
This repository has been archived by the owner on May 15, 2024. It is now read-only.

Sentinel support #21

Open
scalp42 opened this issue Oct 20, 2018 · 4 comments
Open

Sentinel support #21

scalp42 opened this issue Oct 20, 2018 · 4 comments
Assignees

Comments

@scalp42
Copy link

scalp42 commented Oct 20, 2018

I'm familiar with Ohm but ran into some issues with Sentinel as the popular Redis client redis-rb is not used.

Exploring other options like redis_orm, redpear and now zermelo.

Curious if Sentinel is supported?

Thanks in advance! 👨‍🍳

@ali-graham
Copy link
Member

Hi, it should be (assuming the Redis driver passed to zermelo has the right settings) due to zermelo's attempts to do things in atomic or transactional access patterns, but I have to say I've not tested it. I have a docker-based testing environment for redis-sentinel set up so I'll try to get the zermelo test suite running within that on Monday, see how it goes, and hopefully post a more informative response in here.

@ali-graham ali-graham self-assigned this Oct 20, 2018
@scalp42
Copy link
Author

scalp42 commented Oct 20, 2018

@ali-graham thanks a lot! I ran into some issues before (other frameworks) like soveran/redisent#1 so was just wondering.

@ali-graham
Copy link
Member

Hmmm... it worked OK for me with that test suite, but I used a fork of the redis-sentinel gem which I did at a previous job, I've always found the redis-rb gem's support for sentinel connections to not behave as expected. That fork has a few patches to accommodate changes in Redis' behaviour as well, so it's all a bit hacky and based on debugging problems as the code was written. It also depends on the timeout settings of the various parts all agreeing (e.g. sentinel failover should happen within the driver timeout, etc.)

None of those are zermelo-specific concerns though, just the state of play outside of it, and I think Zermelo's locking model shouldn't cause problems with sentinel-mediated connections, at least the test suite was OK once I'd addressed the above configuration issues.

I'll leave this issue open until I can say that zermelo explicitly supports redis-sentinel, it could be necessary to write a modern and up-to-date Ruby gem to for the Sentinel support first. :)

@scalp42
Copy link
Author

scalp42 commented Oct 24, 2018

@ali-graham thanks a lot for the feedback, I'm going to look at the fork for sure 👍

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants