zookeeper-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Dmitry Kuvayskiy <dmitry.kuvays...@gmail.com>
Subject Znodes are really wait-free objects?
Date Mon, 10 Dec 2012 17:45:42 GMT
Hello all.

The paper "ZooKeeper: Wait-free coordination for Internet-scale
systems" claims that znodes are wait-free objects (citing: ``Our
system, Zookeeper, hence implements an API that manipulates simple
_wait-free_ data objects organized hierarchically as in file
systems''). But I wonder if they are really "wait-free" (in the sense
that "every operation has a bound on the number of steps the algorithm
will take before the operation completes")?
As far as I know, ZooKeeper uses locks (well, "synchronized" keyword)
internally. I also cannot imagine a system that big and complex
working only with wait-free data structures. And if we use locks
internally, how can we state that the external interface is wait-free?
Also, I didn't find anything about "wait-freedom" on the
http://zookeeper.apache.org/ site. So can anyone explain a bit, what
this "wait-free" really means and how it is implemented in the code?

Yours sincerely,
Dmitry Kuvayskiy

View raw message