Leader election and distributed locking reduce to the same problem… which is proven to be impossible. It means in some edge case it will fail on you, is your system handling those cases?<p>I didn’t read past this:<p>> Systems like Apache ZooKeeper or Postgres (via Advisory Locks) provide the required building blocks for this<p>Zookeeper is the original sin. Convincing a whole generation of programmers that distributed lock are a feasible solution.<p>This is my biggest pet peeve in distributed systems.<p>——<p>And if you don’t believe me, maybe you’ll trust Kyle K. of Jepsen fame:<p>> However, perfect failure detectors are impossible in asynchronous networks.<p>Links to: <a href="https://www.cs.utexas.edu/~lorenzo/corsi/cs380d/papers/p225-chandra.pdf" rel="nofollow">https://www.cs.utexas.edu/~lorenzo/corsi/cs380d/papers/p225-...</a><p><a href="https://jepsen.io/analyses/datomic-pro-1.0.7075" rel="nofollow">https://jepsen.io/analyses/datomic-pro-1.0.7075</a>