pub struct AppendEntriesRequest {
pub term: Term,
pub leader_id: NodeId,
pub prev_log_index: LogIndex,
pub prev_log_term: Term,
pub entries: Vec<LogEntry>,
pub leader_commit: LogIndex,
}Expand description
Request to append entries (heartbeat or log replication)
Fields§
§term: TermLeader’s term
leader_id: NodeIdLeader’s ID (for redirecting clients)
prev_log_index: LogIndexIndex of log entry immediately preceding new ones
prev_log_term: TermTerm of prev_log_index entry
entries: Vec<LogEntry>Log entries to store (empty for heartbeat)
leader_commit: LogIndexLeader’s commit index
Implementations§
Source§impl AppendEntriesRequest
impl AppendEntriesRequest
Sourcepub fn new(
term: Term,
leader_id: NodeId,
prev_log_index: LogIndex,
prev_log_term: Term,
entries: Vec<LogEntry>,
leader_commit: LogIndex,
) -> Self
pub fn new( term: Term, leader_id: NodeId, prev_log_index: LogIndex, prev_log_term: Term, entries: Vec<LogEntry>, leader_commit: LogIndex, ) -> Self
Create a new append entries request
Sourcepub fn heartbeat(
term: Term,
leader_id: NodeId,
prev_log_index: LogIndex,
prev_log_term: Term,
leader_commit: LogIndex,
) -> Self
pub fn heartbeat( term: Term, leader_id: NodeId, prev_log_index: LogIndex, prev_log_term: Term, leader_commit: LogIndex, ) -> Self
Create a heartbeat (empty entries)
Sourcepub fn is_heartbeat(&self) -> bool
pub fn is_heartbeat(&self) -> bool
Check if this is a heartbeat (no entries)
Trait Implementations§
Source§impl Clone for AppendEntriesRequest
impl Clone for AppendEntriesRequest
Source§fn clone(&self) -> AppendEntriesRequest
fn clone(&self) -> AppendEntriesRequest
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for AppendEntriesRequest
impl Debug for AppendEntriesRequest
Source§impl PartialEq for AppendEntriesRequest
impl PartialEq for AppendEntriesRequest
impl Eq for AppendEntriesRequest
impl StructuralPartialEq for AppendEntriesRequest
Auto Trait Implementations§
impl Freeze for AppendEntriesRequest
impl RefUnwindSafe for AppendEntriesRequest
impl Send for AppendEntriesRequest
impl Sync for AppendEntriesRequest
impl Unpin for AppendEntriesRequest
impl UnwindSafe for AppendEntriesRequest
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