Coder Social home page Coder Social logo

Comments (10)

ryanlecompte avatar ryanlecompte commented on August 19, 2024

Hello Max! Which version of redis_failover are you using? Do you have more than one redis_node_manager daemon running?

from redis_failover.

maxjustus avatar maxjustus commented on August 19, 2024

Hey! 0.9.7 and I'm running 3 instances of redis_node_manager. One per-server.

from redis_failover.

ryanlecompte avatar ryanlecompte commented on August 19, 2024

Thanks. It looks like the log message is happening due to the use of an ephemeral lock to ensure only a single redis_node_manager is the 'primary' at any given moment. @slyphon, would you expect this log message to be logged every second or so in the ZooKeeper logs? Is it normal given the way the ephemeral lock is implemented in ZK 1.6?

from redis_failover.

ryanlecompte avatar ryanlecompte commented on August 19, 2024

@maxjustus, I tracked this down with @slyphon. Each redis_node_manager that's not the current primary will attempt to acquire the exclusive lock every couple seconds. Each time it attempts this and fails, a log entry will be written to the ZK logs. I will need to restructure how we acquire the lock in Redis::Failover::NodeManager#with_lock so that this doesn't happen.

from redis_failover.

maxjustus avatar maxjustus commented on August 19, 2024

Ah okay. Thanks for figuring it out!

from redis_failover.

maxjustus avatar maxjustus commented on August 19, 2024

For the time being I just piped the zookeeper logging output through grep before shipping it to papertrail.

( /usr/local/bin/zkServer start-foreground & echo $! >/var/run/zookeeper.pid ) | grep -v 'Directory not empty for /_zklocking/__redis_failover_nodes_lock' | /usr/bin/logger -t zookeeper &

from redis_failover.

ryanlecompte avatar ryanlecompte commented on August 19, 2024

I just checked in a fix that should address this issue in master. @maxjustus, feel free to give latest master a shot and see if the errors go away for you. I'll put out a release later tonight if all goes well.

Thanks!

from redis_failover.

maxjustus avatar maxjustus commented on August 19, 2024

Awesome! That fix did the trick. Thanks!

from redis_failover.

ryanlecompte avatar ryanlecompte commented on August 19, 2024

Sweet! I'll release a new version soon.

from redis_failover.

ryanlecompte avatar ryanlecompte commented on August 19, 2024

Just released 0.9.7.1 with this fix.

from redis_failover.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.