[INFO] fetching crate almost-raft 0.4.0... [INFO] testing almost-raft-0.4.0 against master#c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38 for pr-146098-7 [INFO] extracting crate almost-raft 0.4.0 into /workspace/builds/worker-3-tc1/source [INFO] started tweaking crates.io crate almost-raft 0.4.0 [INFO] finished tweaking crates.io crate almost-raft 0.4.0 [INFO] tweaked toml for crates.io crate almost-raft 0.4.0 written to /workspace/builds/worker-3-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate almost-raft 0.4.0 on toolchain c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate almost-raft 0.4.0 already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 5775be3fa64876205c23f155385f9fbedd0ffbf08ed2e306cb6fcb5ddfd22db8 [INFO] running `Command { std: "docker" "start" "-a" "5775be3fa64876205c23f155385f9fbedd0ffbf08ed2e306cb6fcb5ddfd22db8", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "5775be3fa64876205c23f155385f9fbedd0ffbf08ed2e306cb6fcb5ddfd22db8", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "5775be3fa64876205c23f155385f9fbedd0ffbf08ed2e306cb6fcb5ddfd22db8", kill_on_drop: false }` [INFO] [stdout] 5775be3fa64876205c23f155385f9fbedd0ffbf08ed2e306cb6fcb5ddfd22db8 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 197a3982566c96dd5ac881a433a3f48b601d740a87f675b3469d172e069c670b [INFO] running `Command { std: "docker" "start" "-a" "197a3982566c96dd5ac881a433a3f48b601d740a87f675b3469d172e069c670b", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.174 [INFO] [stderr] Compiling zerocopy v0.8.26 [INFO] [stderr] Compiling getrandom v0.3.3 [INFO] [stderr] Compiling log v0.4.27 [INFO] [stderr] Compiling syn v2.0.104 [INFO] [stderr] Compiling rand_core v0.9.3 [INFO] [stderr] Compiling ppv-lite86 v0.2.21 [INFO] [stderr] Compiling rand_chacha v0.9.0 [INFO] [stderr] Compiling rand v0.9.1 [INFO] [stderr] Compiling tokio-macros v2.5.0 [INFO] [stderr] Compiling futures-macro v0.3.31 [INFO] [stderr] Compiling serde_derive v1.0.219 [INFO] [stderr] Compiling async-trait v0.1.88 [INFO] [stderr] Compiling futures-util v0.3.31 [INFO] [stderr] Compiling tokio v1.46.1 [INFO] [stderr] Compiling tokio-stream v0.1.17 [INFO] [stderr] Compiling serde v1.0.219 [INFO] [stderr] Compiling almost-raft v0.4.0 (/opt/rustwide/workdir) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 23.25s [INFO] running `Command { std: "docker" "inspect" "197a3982566c96dd5ac881a433a3f48b601d740a87f675b3469d172e069c670b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "197a3982566c96dd5ac881a433a3f48b601d740a87f675b3469d172e069c670b", kill_on_drop: false }` [INFO] [stdout] 197a3982566c96dd5ac881a433a3f48b601d740a87f675b3469d172e069c670b [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] cfdbd2c9cf1c076b79b0465b87c32853df4a10a354e4c2d52cd07d3c3325c2ed [INFO] running `Command { std: "docker" "start" "-a" "cfdbd2c9cf1c076b79b0465b87c32853df4a10a354e4c2d52cd07d3c3325c2ed", kill_on_drop: false }` [INFO] [stderr] Compiling memchr v2.7.5 [INFO] [stderr] Compiling regex-syntax v0.8.5 [INFO] [stderr] Compiling log v0.4.27 [INFO] [stderr] Compiling anstyle-parse v0.2.7 [INFO] [stderr] Compiling anstyle v1.0.11 [INFO] [stderr] Compiling colorchoice v1.0.4 [INFO] [stderr] Compiling anstyle-query v1.1.3 [INFO] [stderr] Compiling jiff v0.2.15 [INFO] [stderr] Compiling uuid v1.17.0 [INFO] [stderr] Compiling almost-raft v0.4.0 (/opt/rustwide/workdir) [INFO] [stderr] Compiling anstream v0.6.19 [INFO] [stderr] Compiling aho-corasick v1.1.3 [INFO] [stderr] Compiling regex-automata v0.4.9 [INFO] [stderr] Compiling regex v1.11.1 [INFO] [stderr] Compiling env_filter v0.1.3 [INFO] [stderr] Compiling env_logger v0.11.8 [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 20.00s [INFO] running `Command { std: "docker" "inspect" "cfdbd2c9cf1c076b79b0465b87c32853df4a10a354e4c2d52cd07d3c3325c2ed", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "cfdbd2c9cf1c076b79b0465b87c32853df4a10a354e4c2d52cd07d3c3325c2ed", kill_on_drop: false }` [INFO] [stdout] cfdbd2c9cf1c076b79b0465b87c32853df4a10a354e4c2d52cd07d3c3325c2ed [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 7168ebf516184c7cf5d012662c165c05aa9baad586b0977f738271c12c36df4a [INFO] running `Command { std: "docker" "start" "-a" "7168ebf516184c7cf5d012662c165c05aa9baad586b0977f738271c12c36df4a", kill_on_drop: false }` [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.13s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/almost_raft-c93d578bd4e2e01a) [INFO] [stdout] [INFO] [stderr] [2025-11-11T07:40:20.952Z TRACE almost_raft::election::test] 8189 [INFO] [stdout] running 4 tests [INFO] [stderr] [2025-11-11T07:40:20.952Z INFO almost_raft::election] [node: ea854cb9-bfe3-4d28-a203-98d02ccd4c44] starting election process... [INFO] [stderr] [2025-11-11T07:40:20.952Z TRACE almost_raft::election] [node: ea854cb9-bfe3-4d28-a203-98d02ccd4c44] setting new timeout to 8189 [INFO] [stderr] [2025-11-11T07:40:20.952Z TRACE almost_raft::election] [node: ea854cb9-bfe3-4d28-a203-98d02ccd4c44] got message Some(ControlAddNode(NodeDummy { id: "1", sender: Sender { chan: Tx { inner: Chan { tx: Tx { block_tail: 0x7ebd8c004670, tail_position: 0 }, semaphore: Semaphore { semaphore: Semaphore { permits: 10 }, bound: 10 }, rx_waker: AtomicWaker, tx_count: 3, rx_fields: "..." } } } })) [INFO] [stderr] [2025-11-11T07:40:20.952Z TRACE almost_raft::election] [node: ea854cb9-bfe3-4d28-a203-98d02ccd4c44] remaining_election_timeout: 0, remaining_heartbeat_interval: 1000 [INFO] [stderr] [2025-11-11T07:40:20.953Z TRACE almost_raft::election] [node: ea854cb9-bfe3-4d28-a203-98d02ccd4c44] setting new timeout to 0 [INFO] [stderr] [2025-11-11T07:40:20.953Z TRACE almost_raft::election] [node: ea854cb9-bfe3-4d28-a203-98d02ccd4c44] got message Some(ControlAddNode(NodeDummy { id: "2", sender: Sender { chan: Tx { inner: Chan { tx: Tx { block_tail: 0x7ebd8c004670, tail_position: 0 }, semaphore: Semaphore { semaphore: Semaphore { permits: 10 }, bound: 10 }, rx_waker: AtomicWaker, tx_count: 3, rx_fields: "..." } } } })) [INFO] [stderr] [2025-11-11T07:40:20.953Z TRACE almost_raft::election] [node: ea854cb9-bfe3-4d28-a203-98d02ccd4c44] remaining_election_timeout: 0, remaining_heartbeat_interval: 1000 [INFO] [stderr] [2025-11-11T07:40:20.953Z TRACE almost_raft::election] [node: ea854cb9-bfe3-4d28-a203-98d02ccd4c44] setting new timeout to 0 [INFO] [stderr] [2025-11-11T07:40:20.953Z TRACE almost_raft::election] [node: ea854cb9-bfe3-4d28-a203-98d02ccd4c44] not enough node - required: 3, found: 2 [INFO] [stderr] [2025-11-11T07:40:20.953Z TRACE almost_raft::election] [node: ea854cb9-bfe3-4d28-a203-98d02ccd4c44] remaining_election_timeout: 8189, remaining_heartbeat_interval: 1000 [INFO] [stderr] [2025-11-11T07:40:20.953Z TRACE almost_raft::election] [node: ea854cb9-bfe3-4d28-a203-98d02ccd4c44] setting new timeout to 8189 [INFO] [stderr] [2025-11-11T07:40:20.953Z INFO almost_raft::election] [node: raft-node-1] starting election process... [INFO] [stderr] [2025-11-11T07:40:20.953Z TRACE almost_raft::election] [node: raft-node-1] setting new timeout to 60 [INFO] [stderr] [2025-11-11T07:40:20.953Z TRACE almost_raft::election] [node: raft-node-1] got message Some(ControlAddNode(NodeDummy { id: "raft-node-2", sender: Sender { chan: Tx { inner: Chan { tx: Tx { block_tail: 0x7ebd84004410, tail_position: 2 }, semaphore: Semaphore { semaphore: Semaphore { permits: 8 }, bound: 10 }, rx_waker: AtomicWaker, tx_count: 4, rx_fields: "..." } } } })) [INFO] [stderr] [2025-11-11T07:40:20.953Z TRACE almost_raft::election] [node: raft-node-1] remaining_election_timeout: 60, remaining_heartbeat_interval: 20 [INFO] [stderr] [2025-11-11T07:40:20.953Z TRACE almost_raft::election] [node: raft-node-1] setting new timeout to 60 [INFO] [stderr] [2025-11-11T07:40:20.953Z TRACE almost_raft::election] [node: raft-node-1] got message Some(ControlAddNode(NodeDummy { id: "raft-node-3", sender: Sender { chan: Tx { inner: Chan { tx: Tx { block_tail: 0x7ebd84005310, tail_position: 2 }, semaphore: Semaphore { semaphore: Semaphore { permits: 8 }, bound: 10 }, rx_waker: AtomicWaker, tx_count: 4, rx_fields: "..." } } } })) [INFO] [stderr] [2025-11-11T07:40:20.953Z TRACE almost_raft::election] [node: raft-node-1] remaining_election_timeout: 60, remaining_heartbeat_interval: 20 [INFO] [stderr] [2025-11-11T07:40:20.954Z TRACE almost_raft::election] [node: raft-node-1] setting new timeout to 60 [INFO] [stderr] [2025-11-11T07:40:20.954Z INFO almost_raft::election] [node: raft-node-2] starting election process... [INFO] [stderr] [2025-11-11T07:40:20.954Z TRACE almost_raft::election] [node: raft-node-2] setting new timeout to 70 [INFO] [stderr] [2025-11-11T07:40:20.954Z TRACE almost_raft::election] [node: raft-node-2] got message Some(ControlAddNode(NodeDummy { id: "raft-node-1", sender: Sender { chan: Tx { inner: Chan { tx: Tx { block_tail: 0x7ebd84003490, tail_position: 2 }, semaphore: Semaphore { semaphore: Semaphore { permits: 10 }, bound: 10 }, rx_waker: AtomicWaker, tx_count: 4, rx_fields: "..." } } } })) [INFO] [stderr] [2025-11-11T07:40:20.954Z TRACE almost_raft::election] [node: raft-node-2] remaining_election_timeout: 70, remaining_heartbeat_interval: 20 [INFO] [stderr] [2025-11-11T07:40:20.954Z TRACE almost_raft::election] [node: raft-node-2] setting new timeout to 70 [INFO] [stderr] [2025-11-11T07:40:20.954Z TRACE almost_raft::election] [node: raft-node-2] got message Some(ControlAddNode(NodeDummy { id: "raft-node-3", sender: Sender { chan: Tx { inner: Chan { tx: Tx { block_tail: 0x7ebd84005310, tail_position: 2 }, semaphore: Semaphore { semaphore: Semaphore { permits: 8 }, bound: 10 }, rx_waker: AtomicWaker, tx_count: 4, rx_fields: "..." } } } })) [INFO] [stderr] [2025-11-11T07:40:20.954Z TRACE almost_raft::election] [node: raft-node-2] remaining_election_timeout: 70, remaining_heartbeat_interval: 20 [INFO] [stderr] [2025-11-11T07:40:20.954Z TRACE almost_raft::election] [node: raft-node-2] setting new timeout to 70 [INFO] [stderr] [2025-11-11T07:40:20.954Z INFO almost_raft::election] [node: raft-node-3] starting election process... [INFO] [stderr] [2025-11-11T07:40:20.954Z TRACE almost_raft::election] [node: raft-node-3] setting new timeout to 80 [INFO] [stderr] [2025-11-11T07:40:20.954Z TRACE almost_raft::election] [node: raft-node-3] got message Some(ControlAddNode(NodeDummy { id: "raft-node-1", sender: Sender { chan: Tx { inner: Chan { tx: Tx { block_tail: 0x7ebd84003490, tail_position: 2 }, semaphore: Semaphore { semaphore: Semaphore { permits: 10 }, bound: 10 }, rx_waker: AtomicWaker, tx_count: 4, rx_fields: "..." } } } })) [INFO] [stderr] [2025-11-11T07:40:20.954Z TRACE almost_raft::election] [node: raft-node-3] remaining_election_timeout: 80, remaining_heartbeat_interval: 20 [INFO] [stderr] [2025-11-11T07:40:20.954Z TRACE almost_raft::election] [node: raft-node-3] setting new timeout to 80 [INFO] [stderr] [2025-11-11T07:40:20.954Z TRACE almost_raft::election] [node: raft-node-3] got message Some(ControlAddNode(NodeDummy { id: "raft-node-2", sender: Sender { chan: Tx { inner: Chan { tx: Tx { block_tail: 0x7ebd84004410, tail_position: 2 }, semaphore: Semaphore { semaphore: Semaphore { permits: 10 }, bound: 10 }, rx_waker: AtomicWaker, tx_count: 4, rx_fields: "..." } } } })) [INFO] [stderr] [2025-11-11T07:40:20.954Z TRACE almost_raft::election] [node: raft-node-3] remaining_election_timeout: 80, remaining_heartbeat_interval: 20 [INFO] [stderr] [2025-11-11T07:40:20.954Z TRACE almost_raft::election] [node: raft-node-3] setting new timeout to 80 [INFO] [stderr] [2025-11-11T07:40:20.956Z INFO almost_raft::election] [node: 8e05e194-ecdf-4a23-92f9-68a3b353902d] starting election process... [INFO] [stderr] [2025-11-11T07:40:20.956Z TRACE almost_raft::election] [node: 8e05e194-ecdf-4a23-92f9-68a3b353902d] setting new timeout to 9545 [INFO] [stderr] [2025-11-11T07:40:20.958Z DEBUG almost_raft::election] [node: 8e05e194-ecdf-4a23-92f9-68a3b353902d] updating node state to NodeState::Candidate [INFO] [stderr] [2025-11-11T07:40:20.958Z TRACE almost_raft::election] [node: 8e05e194-ecdf-4a23-92f9-68a3b353902d] updating term from 0 to 1 [INFO] [stderr] [2025-11-11T07:40:20.958Z TRACE almost_raft::election] [node: 8e05e194-ecdf-4a23-92f9-68a3b353902d] sending vote request for term 1 to: NodeDummy { id: "1", sender: Sender { chan: Tx { inner: Chan { tx: Tx { block_tail: 0x7ebd88002d10, tail_position: 0 }, semaphore: Semaphore { semaphore: Semaphore { permits: 10 }, bound: 10 }, rx_waker: AtomicWaker, tx_count: 5, rx_fields: "..." } } } } [INFO] [stderr] [2025-11-11T07:40:20.958Z TRACE almost_raft::election::test] [node: 1] sending message RequestVote { requester_node_id: "8e05e194-ecdf-4a23-92f9-68a3b353902d", term: 1 } [INFO] [stderr] [2025-11-11T07:40:20.958Z TRACE almost_raft::election] [node: 8e05e194-ecdf-4a23-92f9-68a3b353902d] sending vote request for term 1 to: NodeDummy { id: "2", sender: Sender { chan: Tx { inner: Chan { tx: Tx { block_tail: 0x7ebd88002d10, tail_position: 1 }, semaphore: Semaphore { semaphore: Semaphore { permits: 9 }, bound: 10 }, rx_waker: AtomicWaker, tx_count: 5, rx_fields: "..." } } } } [INFO] [stderr] [2025-11-11T07:40:20.958Z TRACE almost_raft::election::test] [node: 2] sending message RequestVote { requester_node_id: "8e05e194-ecdf-4a23-92f9-68a3b353902d", term: 1 } [INFO] [stderr] [2025-11-11T07:40:20.959Z TRACE almost_raft::election] [node: 8e05e194-ecdf-4a23-92f9-68a3b353902d] sending vote request for term 1 to: NodeDummy { id: "3", sender: Sender { chan: Tx { inner: Chan { tx: Tx { block_tail: 0x7ebd88002d10, tail_position: 2 }, semaphore: Semaphore { semaphore: Semaphore { permits: 8 }, bound: 10 }, rx_waker: AtomicWaker, tx_count: 5, rx_fields: "..." } } } } [INFO] [stderr] [2025-11-11T07:40:20.959Z TRACE almost_raft::election::test] [node: 3] sending message RequestVote { requester_node_id: "8e05e194-ecdf-4a23-92f9-68a3b353902d", term: 1 } [INFO] [stderr] [2025-11-11T07:40:20.959Z TRACE almost_raft::election] [node: 8e05e194-ecdf-4a23-92f9-68a3b353902d] sending vote request for term 1 to: NodeDummy { id: "3", sender: Sender { chan: Tx { inner: Chan { tx: Tx { block_tail: 0x7ebd88002d10, tail_position: 3 }, semaphore: Semaphore { semaphore: Semaphore { permits: 7 }, bound: 10 }, rx_waker: AtomicWaker, tx_count: 5, rx_fields: "..." } } } } [INFO] [stderr] [2025-11-11T07:40:20.959Z TRACE almost_raft::election::test] [node: 3] sending message RequestVote { requester_node_id: "8e05e194-ecdf-4a23-92f9-68a3b353902d", term: 1 } [INFO] [stderr] [2025-11-11T07:40:20.959Z TRACE almost_raft::election] [node: ea854cb9-bfe3-4d28-a203-98d02ccd4c44] got message Some(ControlAddNode(NodeDummy { id: "3", sender: Sender { chan: Tx { inner: Chan { tx: Tx { block_tail: 0x7ebd8c004670, tail_position: 0 }, semaphore: Semaphore { semaphore: Semaphore { permits: 10 }, bound: 10 }, rx_waker: AtomicWaker, tx_count: 4, rx_fields: "..." } } } })) [INFO] [stderr] [2025-11-11T07:40:20.959Z TRACE almost_raft::election] [node: ea854cb9-bfe3-4d28-a203-98d02ccd4c44] remaining_election_timeout: 8183, remaining_heartbeat_interval: 1000 [INFO] [stderr] [2025-11-11T07:40:20.959Z TRACE almost_raft::election] [node: 8e05e194-ecdf-4a23-92f9-68a3b353902d] remaining_election_timeout: 9545, remaining_heartbeat_interval: 1000 [INFO] [stderr] [2025-11-11T07:40:20.960Z TRACE almost_raft::election] [node: 8e05e194-ecdf-4a23-92f9-68a3b353902d] setting new timeout to 9545 [INFO] [stderr] [2025-11-11T07:40:20.960Z TRACE almost_raft::election] [node: ea854cb9-bfe3-4d28-a203-98d02ccd4c44] setting new timeout to 8183 [INFO] [stderr] [2025-11-11T07:40:20.960Z TRACE almost_raft::election::test] Some(RequestVote { requester_node_id: "8e05e194-ecdf-4a23-92f9-68a3b353902d", term: 1 }) [INFO] [stderr] [2025-11-11T07:40:20.960Z TRACE almost_raft::election::test] Some(RequestVote { requester_node_id: "8e05e194-ecdf-4a23-92f9-68a3b353902d", term: 1 }) [INFO] [stderr] [2025-11-11T07:40:20.960Z DEBUG almost_raft::election] [node: ea854cb9-bfe3-4d28-a203-98d02ccd4c44] updating node state to NodeState::Candidate [INFO] [stderr] [2025-11-11T07:40:20.961Z TRACE almost_raft::election] [node: ea854cb9-bfe3-4d28-a203-98d02ccd4c44] updating term from 0 to 1 [INFO] [stderr] [2025-11-11T07:40:20.961Z TRACE almost_raft::election::test] Some(RequestVote { requester_node_id: "8e05e194-ecdf-4a23-92f9-68a3b353902d", term: 1 }) [INFO] [stderr] [2025-11-11T07:40:20.961Z TRACE almost_raft::election::test] Some(RequestVote { requester_node_id: "8e05e194-ecdf-4a23-92f9-68a3b353902d", term: 1 }) [INFO] [stderr] [2025-11-11T07:40:20.961Z TRACE almost_raft::election] [node: 8e05e194-ecdf-4a23-92f9-68a3b353902d] got message Some(RequestVoteResponse { term: 1, vote: true }) [INFO] [stderr] [2025-11-11T07:40:20.961Z TRACE almost_raft::election] [node: 8e05e194-ecdf-4a23-92f9-68a3b353902d] remaining_election_timeout: 9544, remaining_heartbeat_interval: 1000 [INFO] [stderr] [2025-11-11T07:40:20.961Z TRACE almost_raft::election] [node: ea854cb9-bfe3-4d28-a203-98d02ccd4c44] sending vote request for term 1 to: NodeDummy { id: "1", sender: Sender { chan: Tx { inner: Chan { tx: Tx { block_tail: 0x7ebd8c004670, tail_position: 0 }, semaphore: Semaphore { semaphore: Semaphore { permits: 10 }, bound: 10 }, rx_waker: AtomicWaker, tx_count: 4, rx_fields: "..." } } } } [INFO] [stderr] [2025-11-11T07:40:20.961Z TRACE almost_raft::election::test] [node: 1] sending message RequestVote { requester_node_id: "ea854cb9-bfe3-4d28-a203-98d02ccd4c44", term: 1 } [INFO] [stderr] [2025-11-11T07:40:20.961Z TRACE almost_raft::election] [node: ea854cb9-bfe3-4d28-a203-98d02ccd4c44] sending vote request for term 1 to: NodeDummy { id: "2", sender: Sender { chan: Tx { inner: Chan { tx: Tx { block_tail: 0x7ebd8c004670, tail_position: 1 }, semaphore: Semaphore { semaphore: Semaphore { permits: 9 }, bound: 10 }, rx_waker: AtomicWaker, tx_count: 4, rx_fields: "..." } } } } [INFO] [stderr] [2025-11-11T07:40:20.961Z TRACE almost_raft::election::test] [node: 2] sending message RequestVote { requester_node_id: "ea854cb9-bfe3-4d28-a203-98d02ccd4c44", term: 1 } [INFO] [stderr] [2025-11-11T07:40:20.961Z TRACE almost_raft::election] [node: ea854cb9-bfe3-4d28-a203-98d02ccd4c44] sending vote request for term 1 to: NodeDummy { id: "3", sender: Sender { chan: Tx { inner: Chan { tx: Tx { block_tail: 0x7ebd8c004670, tail_position: 2 }, semaphore: Semaphore { semaphore: Semaphore { permits: 8 }, bound: 10 }, rx_waker: AtomicWaker, tx_count: 4, rx_fields: "..." } } } } [INFO] [stderr] [2025-11-11T07:40:20.961Z TRACE almost_raft::election::test] [node: 3] sending message RequestVote { requester_node_id: "ea854cb9-bfe3-4d28-a203-98d02ccd4c44", term: 1 } [INFO] [stderr] [2025-11-11T07:40:20.962Z TRACE almost_raft::election] [node: ea854cb9-bfe3-4d28-a203-98d02ccd4c44] remaining_election_timeout: 8189, remaining_heartbeat_interval: 1000 [INFO] [stderr] [2025-11-11T07:40:20.962Z TRACE almost_raft::election] [node: ea854cb9-bfe3-4d28-a203-98d02ccd4c44] setting new timeout to 8189 [INFO] [stderr] [2025-11-11T07:40:20.962Z TRACE almost_raft::election::test] Ok(Some(RequestVote { requester_node_id: "ea854cb9-bfe3-4d28-a203-98d02ccd4c44", term: 1 })) [INFO] [stderr] [2025-11-11T07:40:20.962Z TRACE almost_raft::election] [node: 8e05e194-ecdf-4a23-92f9-68a3b353902d] setting new timeout to 9544 [INFO] [stderr] [2025-11-11T07:40:20.962Z TRACE almost_raft::election] [node: 8e05e194-ecdf-4a23-92f9-68a3b353902d] got message Some(RequestVoteResponse { term: 1, vote: true }) [INFO] [stderr] [2025-11-11T07:40:20.962Z DEBUG almost_raft::election] [node: 8e05e194-ecdf-4a23-92f9-68a3b353902d] updating node state to NodeState::Leader [INFO] [stderr] [2025-11-11T07:40:20.962Z TRACE almost_raft::election::test] [node: 1] sending message HeartBeat { leader_node_id: "8e05e194-ecdf-4a23-92f9-68a3b353902d", term: 1 } [INFO] [stderr] [2025-11-11T07:40:20.962Z TRACE almost_raft::election] [node: 8e05e194-ecdf-4a23-92f9-68a3b353902d] sent heartbeat [INFO] [stderr] [2025-11-11T07:40:20.962Z TRACE almost_raft::election::test] [node: 2] sending message HeartBeat { leader_node_id: "8e05e194-ecdf-4a23-92f9-68a3b353902d", term: 1 } [INFO] [stderr] [2025-11-11T07:40:20.963Z TRACE almost_raft::election] [node: 8e05e194-ecdf-4a23-92f9-68a3b353902d] sent heartbeat [INFO] [stderr] [2025-11-11T07:40:20.963Z TRACE almost_raft::election::test] [node: 3] sending message HeartBeat { leader_node_id: "8e05e194-ecdf-4a23-92f9-68a3b353902d", term: 1 } [INFO] [stderr] [2025-11-11T07:40:20.963Z TRACE almost_raft::election] [node: 8e05e194-ecdf-4a23-92f9-68a3b353902d] sent heartbeat [INFO] [stdout] test election::test::test_min_node ... ok [INFO] [stderr] [2025-11-11T07:40:20.963Z TRACE almost_raft::election::test] [node: 3] sending message HeartBeat { leader_node_id: "8e05e194-ecdf-4a23-92f9-68a3b353902d", term: 1 } [INFO] [stderr] [2025-11-11T07:40:20.963Z INFO almost_raft::election] [node: raft-node] starting election process... [INFO] [stderr] [2025-11-11T07:40:20.963Z TRACE almost_raft::election] [node: raft-node] setting new timeout to 5752 [INFO] [stderr] [2025-11-11T07:40:20.963Z TRACE almost_raft::election] [node: 8e05e194-ecdf-4a23-92f9-68a3b353902d] sent heartbeat [INFO] [stderr] [2025-11-11T07:40:20.963Z TRACE almost_raft::election] [node: 8e05e194-ecdf-4a23-92f9-68a3b353902d] remaining_election_timeout: 9543, remaining_heartbeat_interval: 1000 [INFO] [stderr] [2025-11-11T07:40:20.964Z TRACE almost_raft::election] [node: 8e05e194-ecdf-4a23-92f9-68a3b353902d] setting new timeout to 1000 [INFO] [stderr] [2025-11-11T07:40:20.964Z TRACE almost_raft::election] [node: 8e05e194-ecdf-4a23-92f9-68a3b353902d] got message Some(RequestVoteResponse { term: 1, vote: true }) [INFO] [stderr] [2025-11-11T07:40:20.964Z TRACE almost_raft::election] [node: 8e05e194-ecdf-4a23-92f9-68a3b353902d] remaining_election_timeout: 9543, remaining_heartbeat_interval: 9543 [INFO] [stderr] [2025-11-11T07:40:20.964Z TRACE almost_raft::election] [node: 8e05e194-ecdf-4a23-92f9-68a3b353902d] setting new timeout to 9543 [INFO] [stderr] [2025-11-11T07:40:20.965Z DEBUG almost_raft::election] [node: raft-node] updating node state to NodeState::Candidate [INFO] [stderr] [2025-11-11T07:40:20.965Z TRACE almost_raft::election] [node: raft-node] updating term from 0 to 1 [INFO] [stderr] [2025-11-11T07:40:20.965Z TRACE almost_raft::election] [node: raft-node] sending vote request for term 1 to: NodeDummy { id: "1", sender: Sender { chan: Tx { inner: Chan { tx: Tx { block_tail: 0x7ebd8c004c00, tail_position: 0 }, semaphore: Semaphore { semaphore: Semaphore { permits: 10 }, bound: 10 }, rx_waker: AtomicWaker, tx_count: 5, rx_fields: "..." } } } } [INFO] [stderr] [2025-11-11T07:40:20.965Z TRACE almost_raft::election::test] [node: 1] sending message RequestVote { requester_node_id: "raft-node", term: 1 } [INFO] [stderr] [2025-11-11T07:40:20.965Z TRACE almost_raft::election] [node: raft-node] sending vote request for term 1 to: NodeDummy { id: "2", sender: Sender { chan: Tx { inner: Chan { tx: Tx { block_tail: 0x7ebd8c004c00, tail_position: 1 }, semaphore: Semaphore { semaphore: Semaphore { permits: 9 }, bound: 10 }, rx_waker: AtomicWaker, tx_count: 5, rx_fields: "..." } } } } [INFO] [stderr] [2025-11-11T07:40:20.965Z TRACE almost_raft::election::test] [node: 2] sending message RequestVote { requester_node_id: "raft-node", term: 1 } [INFO] [stderr] [2025-11-11T07:40:20.965Z TRACE almost_raft::election] [node: raft-node] sending vote request for term 1 to: NodeDummy { id: "3", sender: Sender { chan: Tx { inner: Chan { tx: Tx { block_tail: 0x7ebd8c004c00, tail_position: 2 }, semaphore: Semaphore { semaphore: Semaphore { permits: 8 }, bound: 10 }, rx_waker: AtomicWaker, tx_count: 5, rx_fields: "..." } } } } [INFO] [stderr] [2025-11-11T07:40:20.966Z TRACE almost_raft::election::test] [node: 3] sending message RequestVote { requester_node_id: "raft-node", term: 1 } [INFO] [stderr] [2025-11-11T07:40:20.966Z TRACE almost_raft::election] [node: raft-node] sending vote request for term 1 to: NodeDummy { id: "4", sender: Sender { chan: Tx { inner: Chan { tx: Tx { block_tail: 0x7ebd8c004c00, tail_position: 3 }, semaphore: Semaphore { semaphore: Semaphore { permits: 7 }, bound: 10 }, rx_waker: AtomicWaker, tx_count: 5, rx_fields: "..." } } } } [INFO] [stderr] [2025-11-11T07:40:20.966Z TRACE almost_raft::election::test] [node: 4] sending message RequestVote { requester_node_id: "raft-node", term: 1 } [INFO] [stderr] [2025-11-11T07:40:20.966Z TRACE almost_raft::election] [node: raft-node] remaining_election_timeout: 5752, remaining_heartbeat_interval: 1000 [INFO] [stderr] [2025-11-11T07:40:20.966Z TRACE almost_raft::election] [node: raft-node] setting new timeout to 5752 [INFO] [stderr] [2025-11-11T07:40:20.966Z TRACE almost_raft::election] [node: raft-node] got message Some(RequestVoteResponse { term: 1, vote: true }) [INFO] [stderr] [2025-11-11T07:40:20.966Z TRACE almost_raft::election] [node: raft-node] remaining_election_timeout: 5752, remaining_heartbeat_interval: 1000 [INFO] [stderr] [2025-11-11T07:40:20.967Z TRACE almost_raft::election] [node: raft-node] setting new timeout to 5752 [INFO] [stdout] test election::test::test_raft_election ... ok [INFO] [stderr] [2025-11-11T07:40:20.975Z DEBUG almost_raft::election] [node: raft-node] updating node state to NodeState::Candidate [INFO] [stderr] [2025-11-11T07:40:20.975Z TRACE almost_raft::election] [node: raft-node] updating term from 1 to 2 [INFO] [stderr] [2025-11-11T07:40:20.975Z TRACE almost_raft::election] [node: raft-node] sending vote request for term 2 to: NodeDummy { id: "1", sender: Sender { chan: Tx { inner: Chan { tx: Tx { block_tail: 0x7ebd8c004c00, tail_position: 4 }, semaphore: Semaphore { semaphore: Semaphore { permits: 10 }, bound: 10 }, rx_waker: AtomicWaker, tx_count: 5, rx_fields: "..." } } } } [INFO] [stderr] [2025-11-11T07:40:20.975Z TRACE almost_raft::election::test] [node: 1] sending message RequestVote { requester_node_id: "raft-node", term: 2 } [INFO] [stderr] [2025-11-11T07:40:20.975Z TRACE almost_raft::election] [node: raft-node] sending vote request for term 2 to: NodeDummy { id: "2", sender: Sender { chan: Tx { inner: Chan { tx: Tx { block_tail: 0x7ebd8c004c00, tail_position: 5 }, semaphore: Semaphore { semaphore: Semaphore { permits: 9 }, bound: 10 }, rx_waker: AtomicWaker, tx_count: 5, rx_fields: "..." } } } } [INFO] [stderr] [2025-11-11T07:40:20.975Z TRACE almost_raft::election::test] [node: 2] sending message RequestVote { requester_node_id: "raft-node", term: 2 } [INFO] [stderr] [2025-11-11T07:40:20.975Z TRACE almost_raft::election] [node: raft-node] sending vote request for term 2 to: NodeDummy { id: "3", sender: Sender { chan: Tx { inner: Chan { tx: Tx { block_tail: 0x7ebd8c004c00, tail_position: 6 }, semaphore: Semaphore { semaphore: Semaphore { permits: 8 }, bound: 10 }, rx_waker: AtomicWaker, tx_count: 5, rx_fields: "..." } } } } [INFO] [stderr] [2025-11-11T07:40:20.975Z TRACE almost_raft::election::test] [node: 3] sending message RequestVote { requester_node_id: "raft-node", term: 2 } [INFO] [stderr] [2025-11-11T07:40:20.975Z TRACE almost_raft::election] [node: raft-node] sending vote request for term 2 to: NodeDummy { id: "4", sender: Sender { chan: Tx { inner: Chan { tx: Tx { block_tail: 0x7ebd8c004c00, tail_position: 7 }, semaphore: Semaphore { semaphore: Semaphore { permits: 7 }, bound: 10 }, rx_waker: AtomicWaker, tx_count: 5, rx_fields: "..." } } } } [INFO] [stderr] [2025-11-11T07:40:20.975Z TRACE almost_raft::election::test] [node: 4] sending message RequestVote { requester_node_id: "raft-node", term: 2 } [INFO] [stderr] [2025-11-11T07:40:20.975Z TRACE almost_raft::election] [node: raft-node] remaining_election_timeout: 5752, remaining_heartbeat_interval: 1000 [INFO] [stderr] [2025-11-11T07:40:20.975Z TRACE almost_raft::election] [node: raft-node] setting new timeout to 5752 [INFO] [stderr] [2025-11-11T07:40:20.975Z TRACE almost_raft::election::test] multi-term: RequestVote { requester_node_id: "raft-node", term: 2 } [INFO] [stderr] [2025-11-11T07:40:20.975Z TRACE almost_raft::election::test] Some(RequestVote { requester_node_id: "raft-node", term: 2 }) [INFO] [stderr] [2025-11-11T07:40:20.976Z TRACE almost_raft::election::test] Some(RequestVote { requester_node_id: "raft-node", term: 2 }) [INFO] [stderr] [2025-11-11T07:40:20.976Z TRACE almost_raft::election::test] Some(RequestVote { requester_node_id: "raft-node", term: 2 }) [INFO] [stderr] [2025-11-11T07:40:20.976Z TRACE almost_raft::election] [node: raft-node] got message Some(RequestVoteResponse { term: 2, vote: true }) [INFO] [stderr] [2025-11-11T07:40:20.976Z TRACE almost_raft::election] [node: raft-node] remaining_election_timeout: 5752, remaining_heartbeat_interval: 1000 [INFO] [stderr] [2025-11-11T07:40:20.976Z TRACE almost_raft::election] [node: raft-node] setting new timeout to 5752 [INFO] [stderr] [2025-11-11T07:40:20.976Z TRACE almost_raft::election] [node: raft-node] got message Some(RequestVoteResponse { term: 2, vote: true }) [INFO] [stderr] [2025-11-11T07:40:20.976Z DEBUG almost_raft::election] [node: raft-node] updating node state to NodeState::Leader [INFO] [stderr] [2025-11-11T07:40:20.977Z TRACE almost_raft::election::test] [node: 1] sending message HeartBeat { leader_node_id: "raft-node", term: 2 } [INFO] [stderr] [2025-11-11T07:40:20.977Z TRACE almost_raft::election] [node: raft-node] sent heartbeat [INFO] [stderr] [2025-11-11T07:40:20.977Z TRACE almost_raft::election::test] [node: 2] sending message HeartBeat { leader_node_id: "raft-node", term: 2 } [INFO] [stderr] [2025-11-11T07:40:20.978Z TRACE almost_raft::election] [node: raft-node] sent heartbeat [INFO] [stderr] [2025-11-11T07:40:20.978Z TRACE almost_raft::election::test] [node: 3] sending message HeartBeat { leader_node_id: "raft-node", term: 2 } [INFO] [stderr] [2025-11-11T07:40:20.978Z TRACE almost_raft::election] [node: raft-node] sent heartbeat [INFO] [stderr] [2025-11-11T07:40:20.978Z TRACE almost_raft::election::test] [node: 4] sending message HeartBeat { leader_node_id: "raft-node", term: 2 } [INFO] [stderr] [2025-11-11T07:40:20.978Z TRACE almost_raft::election] [node: raft-node] sent heartbeat [INFO] [stderr] [2025-11-11T07:40:20.979Z TRACE almost_raft::election] [node: raft-node] remaining_election_timeout: 5750, remaining_heartbeat_interval: 1000 [INFO] [stderr] [2025-11-11T07:40:20.979Z TRACE almost_raft::election] [node: raft-node] setting new timeout to 1000 [INFO] [stdout] test election::test::test_raft_election_multi_term ... ok [INFO] [stderr] [2025-11-11T07:40:21.015Z DEBUG almost_raft::election] [node: raft-node-1] updating node state to NodeState::Candidate [INFO] [stderr] [2025-11-11T07:40:21.015Z TRACE almost_raft::election] [node: raft-node-1] updating term from 0 to 1 [INFO] [stderr] [2025-11-11T07:40:21.015Z TRACE almost_raft::election] [node: raft-node-1] sending vote request for term 1 to: NodeDummy { id: "raft-node-2", sender: Sender { chan: Tx { inner: Chan { tx: Tx { block_tail: 0x7ebd84004410, tail_position: 2 }, semaphore: Semaphore { semaphore: Semaphore { permits: 10 }, bound: 10 }, rx_waker: AtomicWaker, tx_count: 4, rx_fields: "..." } } } } [INFO] [stderr] [2025-11-11T07:40:21.015Z TRACE almost_raft::election::test] [node: raft-node-2] sending message RequestVote { requester_node_id: "raft-node-1", term: 1 } [INFO] [stderr] [2025-11-11T07:40:21.015Z TRACE almost_raft::election] [node: raft-node-1] sending vote request for term 1 to: NodeDummy { id: "raft-node-3", sender: Sender { chan: Tx { inner: Chan { tx: Tx { block_tail: 0x7ebd84005310, tail_position: 2 }, semaphore: Semaphore { semaphore: Semaphore { permits: 10 }, bound: 10 }, rx_waker: AtomicWaker, tx_count: 4, rx_fields: "..." } } } } [INFO] [stderr] [2025-11-11T07:40:21.015Z TRACE almost_raft::election::test] [node: raft-node-3] sending message RequestVote { requester_node_id: "raft-node-1", term: 1 } [INFO] [stderr] [2025-11-11T07:40:21.015Z TRACE almost_raft::election] [node: raft-node-1] remaining_election_timeout: 60, remaining_heartbeat_interval: 20 [INFO] [stderr] [2025-11-11T07:40:21.015Z TRACE almost_raft::election] [node: raft-node-1] setting new timeout to 60 [INFO] [stderr] [2025-11-11T07:40:21.015Z TRACE almost_raft::election] [node: raft-node-2] got message Some(RequestVote { requester_node_id: "raft-node-1", term: 1 }) [INFO] [stderr] [2025-11-11T07:40:21.015Z TRACE almost_raft::election] [node: raft-node-2] updating term from 0 to 1 [INFO] [stderr] [2025-11-11T07:40:21.015Z TRACE almost_raft::election] [node: raft-node-2] current term: 1, sending vote to node: raft-node-1, for term: 1 [INFO] [stderr] [2025-11-11T07:40:21.015Z TRACE almost_raft::election::test] [node: raft-node-1] sending message RequestVoteResponse { term: 1, vote: true } [INFO] [stderr] [2025-11-11T07:40:21.015Z TRACE almost_raft::election] [node: raft-node-2] remaining_election_timeout: 9, remaining_heartbeat_interval: 20 [INFO] [stderr] [2025-11-11T07:40:21.015Z TRACE almost_raft::election] [node: raft-node-2] setting new timeout to 9 [INFO] [stderr] [2025-11-11T07:40:21.015Z TRACE almost_raft::election] [node: raft-node-3] got message Some(RequestVote { requester_node_id: "raft-node-1", term: 1 }) [INFO] [stderr] [2025-11-11T07:40:21.015Z TRACE almost_raft::election] [node: raft-node-3] updating term from 0 to 1 [INFO] [stderr] [2025-11-11T07:40:21.016Z TRACE almost_raft::election] [node: raft-node-3] current term: 1, sending vote to node: raft-node-1, for term: 1 [INFO] [stderr] [2025-11-11T07:40:21.016Z TRACE almost_raft::election::test] [node: raft-node-1] sending message RequestVoteResponse { term: 1, vote: true } [INFO] [stderr] [2025-11-11T07:40:21.016Z TRACE almost_raft::election] [node: raft-node-3] remaining_election_timeout: 19, remaining_heartbeat_interval: 20 [INFO] [stderr] [2025-11-11T07:40:21.016Z TRACE almost_raft::election] [node: raft-node-3] setting new timeout to 19 [INFO] [stderr] [2025-11-11T07:40:21.016Z TRACE almost_raft::election] [node: raft-node-1] got message Some(RequestVoteResponse { term: 1, vote: true }) [INFO] [stderr] [2025-11-11T07:40:21.016Z DEBUG almost_raft::election] [node: raft-node-1] updating node state to NodeState::Leader [INFO] [stderr] [2025-11-11T07:40:21.016Z TRACE almost_raft::election::test] [node: raft-node-2] sending message HeartBeat { leader_node_id: "raft-node-1", term: 1 } [INFO] [stderr] [2025-11-11T07:40:21.016Z TRACE almost_raft::election] [node: raft-node-1] sent heartbeat [INFO] [stderr] [2025-11-11T07:40:21.016Z TRACE almost_raft::election::test] [node: raft-node-3] sending message HeartBeat { leader_node_id: "raft-node-1", term: 1 } [INFO] [stderr] [2025-11-11T07:40:21.016Z TRACE almost_raft::election] [node: raft-node-1] sent heartbeat [INFO] [stderr] [2025-11-11T07:40:21.017Z TRACE almost_raft::election] [node: raft-node-1] remaining_election_timeout: 59, remaining_heartbeat_interval: 20 [INFO] [stderr] [2025-11-11T07:40:21.017Z TRACE almost_raft::election] [node: raft-node-1] setting new timeout to 20 [INFO] [stderr] [2025-11-11T07:40:21.017Z TRACE almost_raft::election] [node: raft-node-1] got message Some(RequestVoteResponse { term: 1, vote: true }) [INFO] [stderr] [2025-11-11T07:40:21.017Z TRACE almost_raft::election] [node: raft-node-1] remaining_election_timeout: 59, remaining_heartbeat_interval: 59 [INFO] [stderr] [2025-11-11T07:40:21.017Z TRACE almost_raft::election] [node: raft-node-1] setting new timeout to 59 [INFO] [stderr] [2025-11-11T07:40:21.017Z TRACE almost_raft::election] [node: raft-node-2] got message Some(HeartBeat { leader_node_id: "raft-node-1", term: 1 }) [INFO] [stderr] [2025-11-11T07:40:21.017Z TRACE almost_raft::election] [node: raft-node-2] updating term to 1 [INFO] [stderr] [2025-11-11T07:40:21.017Z DEBUG almost_raft::election] [node: raft-node-2] leader changed to node: raft-node-1 [INFO] [stderr] [2025-11-11T07:40:21.017Z TRACE almost_raft::election] [node: raft-node-2] remaining_election_timeout: 70, remaining_heartbeat_interval: 20 [INFO] [stderr] [2025-11-11T07:40:21.017Z TRACE almost_raft::election] [node: raft-node-2] setting new timeout to 70 [INFO] [stderr] [2025-11-11T07:40:21.017Z TRACE almost_raft::election] [node: raft-node-3] got message Some(HeartBeat { leader_node_id: "raft-node-1", term: 1 }) [INFO] [stderr] [2025-11-11T07:40:21.017Z TRACE almost_raft::election] [node: raft-node-3] updating term to 1 [INFO] [stderr] [2025-11-11T07:40:21.017Z DEBUG almost_raft::election] [node: raft-node-3] leader changed to node: raft-node-1 [INFO] [stderr] [2025-11-11T07:40:21.017Z TRACE almost_raft::election] [node: raft-node-3] remaining_election_timeout: 80, remaining_heartbeat_interval: 20 [INFO] [stderr] [2025-11-11T07:40:21.017Z TRACE almost_raft::election] [node: raft-node-3] setting new timeout to 80 [INFO] [stderr] [2025-11-11T07:40:21.040Z TRACE almost_raft::election::test] ControlLeaderChanged("raft-node-1") [INFO] [stdout] test election::test::test_raft_election_multi_node ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.09s [INFO] [stdout] [INFO] [stderr] Doc-tests almost_raft [INFO] [stdout] [INFO] [stdout] running 5 tests [INFO] [stdout] test src/lib.rs - (line 21) ... ignored [INFO] [stdout] test src/lib.rs - (line 43) ... ignored [INFO] [stdout] test src/lib.rs - (line 66) ... ignored [INFO] [stdout] test src/lib.rs - (line 72) ... ignored [INFO] [stdout] test src/lib.rs - (line 85) ... ignored [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 5 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "7168ebf516184c7cf5d012662c165c05aa9baad586b0977f738271c12c36df4a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "7168ebf516184c7cf5d012662c165c05aa9baad586b0977f738271c12c36df4a", kill_on_drop: false }` [INFO] [stdout] 7168ebf516184c7cf5d012662c165c05aa9baad586b0977f738271c12c36df4a