pub struct Stat {
pub czxid: i64,
pub mzxid: i64,
pub ctime: i64,
pub mtime: i64,
pub version: i32,
pub cversion: i32,
pub aversion: i32,
pub ephemeral_owner: i64,
pub data_length: i32,
pub num_children: i32,
pub pzxid: i64,
}
Expand description
Statistics about a znode, similar to the UNIX stat
structure.
§Time in ZooKeeper
The concept of time is tricky in distributed systems. ZooKeeper keeps track of time in a number of ways.
- zxid: Every change to a ZooKeeper cluster receives a stamp in the form of a zxid (ZooKeeper Transaction ID). This exposes the total ordering of all changes to ZooKeeper. Each change will have a unique zxid – if zxid:a is smaller than zxid:b, then the associated change to zxid:a happened before zxid:b.
- Version Numbers: Every change to a znode will cause an increase to one of the version numbers of that node.
- Clock Time: ZooKeeper does not use clock time to make decisions, but it uses it to put
timestamps into the
Stat
structure.
Fields§
§czxid: i64
The transaction ID that created the znode.
mzxid: i64
The last transaction that modified the znode.
ctime: i64
Milliseconds since epoch when the znode was created.
mtime: i64
Milliseconds since epoch when the znode was last modified.
version: i32
The number of changes to the data of the znode.
cversion: i32
The number of changes to the children of the znode.
aversion: i32
The number of changes to the ACL of the znode.
ephemeral_owner: i64
The session ID of the owner of this znode, if it is an ephemeral entry.
data_length: i32
The length of the data field of the znode.
num_children: i32
The number of children this znode has.
pzxid: i64
The transaction ID that last modified the children of the znode.
Implementations§
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Stat
impl RefUnwindSafe for Stat
impl Send for Stat
impl Sync for Stat
impl Unpin for Stat
impl UnwindSafe for Stat
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more