Skip to main content

cancel_node_unlocked

Function cancel_node_unlocked 

Source
pub fn cancel_node_unlocked(
    lock: &LockedRun<'_>,
    paths: &RunPaths,
    node_id: &NodeId,
    note: Option<&str>,
) -> Result<NodeCancelOutcome>
Expand description

The locked body of cancel_node. The lock: &LockedRun witness proves the caller already holds the run’s exclusive RunLock, so the manifest read, the log replay, the convergence read, the single report append, AND the optional last-node roll-up all share one critical section (it calls append_and_apply_unlocked, never crate::append_and_apply_event, which would deadlock by re-locking).