[INFO] fetching crate almost-raft 0.3.0... [INFO] testing almost-raft-0.3.0 against beta-2022-04-10 for beta-1.61-1 [INFO] extracting crate almost-raft 0.3.0 into /workspace/builds/worker-14/source [INFO] validating manifest of crates.io crate almost-raft 0.3.0 on toolchain beta-2022-04-10 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2022-04-10" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate almost-raft 0.3.0 [INFO] finished tweaking crates.io crate almost-raft 0.3.0 [INFO] tweaked toml for crates.io crate almost-raft 0.3.0 written to /workspace/builds/worker-14/source/Cargo.toml [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2022-04-10" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }` [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2022-04-10" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-14/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-14/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:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2022-04-10" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 4f8456d5f653deac3289ef6bade1b1f1b64a53913e4e50fc163d501f121feace [INFO] running `Command { std: "docker" "start" "-a" "4f8456d5f653deac3289ef6bade1b1f1b64a53913e4e50fc163d501f121feace", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "4f8456d5f653deac3289ef6bade1b1f1b64a53913e4e50fc163d501f121feace", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4f8456d5f653deac3289ef6bade1b1f1b64a53913e4e50fc163d501f121feace", kill_on_drop: false }` [INFO] [stdout] 4f8456d5f653deac3289ef6bade1b1f1b64a53913e4e50fc163d501f121feace [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-14/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-14/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=warn" "-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:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2022-04-10" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 73fe645e2b7557fca5e91b485b7f0bd36a78065a67d71b31e02281599a6fd93b [INFO] running `Command { std: "docker" "start" "-a" "73fe645e2b7557fca5e91b485b7f0bd36a78065a67d71b31e02281599a6fd93b", kill_on_drop: false }` [INFO] [stderr] Compiling syn v1.0.91 [INFO] [stderr] Compiling futures-core v0.3.21 [INFO] [stderr] Compiling pin-project-lite v0.2.8 [INFO] [stderr] Compiling futures-task v0.3.21 [INFO] [stderr] Compiling async-trait v0.1.53 [INFO] [stderr] Compiling futures-util v0.3.21 [INFO] [stderr] Compiling pin-utils v0.1.0 [INFO] [stderr] Compiling getrandom v0.2.6 [INFO] [stderr] Compiling rand_core v0.6.3 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Compiling tokio-macros v1.7.0 [INFO] [stderr] Compiling futures-macro v0.3.21 [INFO] [stderr] Compiling serde_derive v1.0.136 [INFO] [stderr] Compiling tokio v1.17.0 [INFO] [stderr] Compiling tokio-stream v0.1.8 [INFO] [stderr] Compiling serde v1.0.136 [INFO] [stderr] Compiling almost-raft v0.3.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: field is never read: `incoming_tx` [INFO] [stdout] --> src/election/mod.rs:30:5 [INFO] [stdout] | [INFO] [stdout] 30 | incoming_tx: Sender>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] note: `RaftElectionState` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/election/mod.rs:18:10 [INFO] [stdout] | [INFO] [stdout] 18 | #[derive(Debug)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 13.39s [INFO] running `Command { std: "docker" "inspect" "73fe645e2b7557fca5e91b485b7f0bd36a78065a67d71b31e02281599a6fd93b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "73fe645e2b7557fca5e91b485b7f0bd36a78065a67d71b31e02281599a6fd93b", kill_on_drop: false }` [INFO] [stdout] 73fe645e2b7557fca5e91b485b7f0bd36a78065a67d71b31e02281599a6fd93b [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-14/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-14/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=warn" "-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:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2022-04-10" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 7b2914d96c99b0891d3ff331ef167cfffccb7d53884d645e0046a6729d213a91 [INFO] running `Command { std: "docker" "start" "-a" "7b2914d96c99b0891d3ff331ef167cfffccb7d53884d645e0046a6729d213a91", kill_on_drop: false }` [INFO] [stderr] Compiling serde_json v1.0.79 [INFO] [stderr] Compiling once_cell v1.10.0 [INFO] [stderr] Compiling num-traits v0.2.14 [INFO] [stderr] Compiling num-integer v0.1.44 [INFO] [stderr] Compiling tracing-core v0.1.25 [INFO] [stderr] Compiling regex-automata v0.1.10 [INFO] [stderr] Compiling regex v1.5.5 [INFO] [stderr] Compiling sharded-slab v0.1.4 [INFO] [stderr] Compiling uuid v0.8.2 [INFO] [stdout] warning: field is never read: `incoming_tx` [INFO] [stdout] --> src/election/mod.rs:30:5 [INFO] [stdout] | [INFO] [stdout] 30 | incoming_tx: Sender>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] note: `RaftElectionState` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/election/mod.rs:18:10 [INFO] [stdout] | [INFO] [stdout] 18 | #[derive(Debug)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling thread_local v1.1.4 [INFO] [stderr] Compiling tracing-log v0.1.2 [INFO] [stderr] Compiling tracing v0.1.33 [INFO] [stderr] Compiling tracing-serde v0.1.3 [INFO] [stderr] Compiling matchers v0.0.1 [INFO] [stderr] Compiling chrono v0.4.19 [INFO] [stderr] Compiling tracing-subscriber v0.2.25 [INFO] [stderr] Compiling almost-raft v0.3.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: trailing semicolon in macro used in expression position [INFO] [stdout] --> src/election/mod.rs:515:39 [INFO] [stdout] | [INFO] [stdout] 515 | Duration::from_millis($ex); [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 561 | advance(d!(timeout)).await; [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(semicolon_in_expressions_from_macros)]` on by default [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = note: for more information, see issue #79813 [INFO] [stdout] = note: this warning originates in the macro `d` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trailing semicolon in macro used in expression position [INFO] [stdout] --> src/election/mod.rs:515:39 [INFO] [stdout] | [INFO] [stdout] 515 | Duration::from_millis($ex); [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 570 | advance(d!(timeout)).await; [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = note: for more information, see issue #79813 [INFO] [stdout] = note: this warning originates in the macro `d` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trailing semicolon in macro used in expression position [INFO] [stdout] --> src/election/mod.rs:515:39 [INFO] [stdout] | [INFO] [stdout] 515 | Duration::from_millis($ex); [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 580 | advance(d!(timeout)).await; [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = note: for more information, see issue #79813 [INFO] [stdout] = note: this warning originates in the macro `d` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trailing semicolon in macro used in expression position [INFO] [stdout] --> src/election/mod.rs:515:39 [INFO] [stdout] | [INFO] [stdout] 515 | Duration::from_millis($ex); [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 620 | advance(d!(timeout)).await; [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = note: for more information, see issue #79813 [INFO] [stdout] = note: this warning originates in the macro `d` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trailing semicolon in macro used in expression position [INFO] [stdout] --> src/election/mod.rs:515:39 [INFO] [stdout] | [INFO] [stdout] 515 | Duration::from_millis($ex); [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 693 | advance(d!(timeout)).await; [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = note: for more information, see issue #79813 [INFO] [stdout] = note: this warning originates in the macro `d` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trailing semicolon in macro used in expression position [INFO] [stdout] --> src/election/mod.rs:515:39 [INFO] [stdout] | [INFO] [stdout] 515 | Duration::from_millis($ex); [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 708 | advance(d!(timeout)).await; [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = note: for more information, see issue #79813 [INFO] [stdout] = note: this warning originates in the macro `d` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trailing semicolon in macro used in expression position [INFO] [stdout] --> src/election/mod.rs:515:39 [INFO] [stdout] | [INFO] [stdout] 515 | Duration::from_millis($ex); [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 829 | tokio::time::sleep(d!(85)).await; [INFO] [stdout] | ------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = note: for more information, see issue #79813 [INFO] [stdout] = note: this warning originates in the macro `d` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `incoming_tx` [INFO] [stdout] --> src/election/mod.rs:30:5 [INFO] [stdout] | [INFO] [stdout] 30 | incoming_tx: Sender>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] note: `RaftElectionState` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/election/mod.rs:18:10 [INFO] [stdout] | [INFO] [stdout] 18 | #[derive(Debug)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/election/mod.rs:530:13 [INFO] [stdout] | [INFO] [stdout] 530 | self.sender.send(msg).await; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/election/mod.rs:566:9 [INFO] [stdout] | [INFO] [stdout] 566 | tx.send(Message::ControlAddNode(dummy)).await; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/election/mod.rs:568:9 [INFO] [stdout] | [INFO] [stdout] 568 | tx.send(Message::ControlAddNode(dummy)).await; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/election/mod.rs:578:9 [INFO] [stdout] | [INFO] [stdout] 578 | tx.send(Message::ControlAddNode(dummy)).await; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/election/mod.rs:631:9 [INFO] [stdout] | [INFO] [stdout] 631 | / tx_to_raft [INFO] [stdout] 632 | | .send(Message::RequestVoteResponse { [INFO] [stdout] 633 | | vote: true, [INFO] [stdout] 634 | | term: 1, [INFO] [stdout] 635 | | }) [INFO] [stdout] 636 | | .await; [INFO] [stdout] | |___________________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/election/mod.rs:637:9 [INFO] [stdout] | [INFO] [stdout] 637 | / tx_to_raft [INFO] [stdout] 638 | | .send(Message::RequestVoteResponse { [INFO] [stdout] 639 | | vote: true, [INFO] [stdout] 640 | | term: 1, [INFO] [stdout] 641 | | }) [INFO] [stdout] 642 | | .await; [INFO] [stdout] | |___________________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/election/mod.rs:643:9 [INFO] [stdout] | [INFO] [stdout] 643 | / tx_to_raft [INFO] [stdout] 644 | | .send(Message::RequestVoteResponse { [INFO] [stdout] 645 | | vote: true, [INFO] [stdout] 646 | | term: 1, [INFO] [stdout] 647 | | }) [INFO] [stdout] 648 | | .await; [INFO] [stdout] | |___________________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/election/mod.rs:701:9 [INFO] [stdout] | [INFO] [stdout] 701 | / tx_to_raft [INFO] [stdout] 702 | | .send(Message::RequestVoteResponse { [INFO] [stdout] 703 | | vote: true, [INFO] [stdout] 704 | | term: 1, [INFO] [stdout] 705 | | }) [INFO] [stdout] 706 | | .await; [INFO] [stdout] | |___________________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/election/mod.rs:730:13 [INFO] [stdout] | [INFO] [stdout] 730 | / tx_to_raft [INFO] [stdout] 731 | | .send(Message::RequestVoteResponse { [INFO] [stdout] 732 | | vote: true, [INFO] [stdout] 733 | | term: 2, [INFO] [stdout] 734 | | }) [INFO] [stdout] 735 | | .await; [INFO] [stdout] | |_______________________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/election/mod.rs:791:9 [INFO] [stdout] | [INFO] [stdout] 791 | / tx_to_raft_node_1 [INFO] [stdout] 792 | | .send(Message::ControlAddNode(new_node( [INFO] [stdout] 793 | | self_id_2.as_str(), [INFO] [stdout] 794 | | tx_to_raft_node_2.clone(), [INFO] [stdout] 795 | | ))) [INFO] [stdout] 796 | | .await; [INFO] [stdout] | |___________________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/election/mod.rs:797:9 [INFO] [stdout] | [INFO] [stdout] 797 | / tx_to_raft_node_1 [INFO] [stdout] 798 | | .send(Message::ControlAddNode(new_node( [INFO] [stdout] 799 | | self_id_3.as_str(), [INFO] [stdout] 800 | | tx_to_raft_node_3.clone(), [INFO] [stdout] 801 | | ))) [INFO] [stdout] 802 | | .await; [INFO] [stdout] | |___________________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/election/mod.rs:804:9 [INFO] [stdout] | [INFO] [stdout] 804 | / tx_to_raft_node_2 [INFO] [stdout] 805 | | .send(Message::ControlAddNode(new_node( [INFO] [stdout] 806 | | self_id_1.as_str(), [INFO] [stdout] 807 | | tx_to_raft_node_1.clone(), [INFO] [stdout] 808 | | ))) [INFO] [stdout] 809 | | .await; [INFO] [stdout] | |___________________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/election/mod.rs:810:9 [INFO] [stdout] | [INFO] [stdout] 810 | / tx_to_raft_node_2 [INFO] [stdout] 811 | | .send(Message::ControlAddNode(new_node( [INFO] [stdout] 812 | | self_id_3.as_str(), [INFO] [stdout] 813 | | tx_to_raft_node_3.clone(), [INFO] [stdout] 814 | | ))) [INFO] [stdout] 815 | | .await; [INFO] [stdout] | |___________________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/election/mod.rs:816:9 [INFO] [stdout] | [INFO] [stdout] 816 | / tx_to_raft_node_3 [INFO] [stdout] 817 | | .send(Message::ControlAddNode(new_node( [INFO] [stdout] 818 | | self_id_1.as_str(), [INFO] [stdout] 819 | | tx_to_raft_node_1.clone(), [INFO] [stdout] 820 | | ))) [INFO] [stdout] 821 | | .await; [INFO] [stdout] | |___________________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/election/mod.rs:822:9 [INFO] [stdout] | [INFO] [stdout] 822 | / tx_to_raft_node_3 [INFO] [stdout] 823 | | .send(Message::ControlAddNode(new_node( [INFO] [stdout] 824 | | self_id_2.as_str(), [INFO] [stdout] 825 | | tx_to_raft_node_2.clone(), [INFO] [stdout] 826 | | ))) [INFO] [stdout] 827 | | .await; [INFO] [stdout] | |___________________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 23 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 6.97s [INFO] [stderr] Executable unittests src/lib.rs (/opt/rustwide/target/debug/deps/almost_raft-7e3c440914e23e1b) [INFO] running `Command { std: "docker" "inspect" "7b2914d96c99b0891d3ff331ef167cfffccb7d53884d645e0046a6729d213a91", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "7b2914d96c99b0891d3ff331ef167cfffccb7d53884d645e0046a6729d213a91", kill_on_drop: false }` [INFO] [stdout] 7b2914d96c99b0891d3ff331ef167cfffccb7d53884d645e0046a6729d213a91 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-14/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-14/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=warn" "-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:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2022-04-10" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 37fed0184ab2d0439e87aa1450fcf8833fdbf76e30316aca43ccde56ce361ab6 [INFO] running `Command { std: "docker" "start" "-a" "37fed0184ab2d0439e87aa1450fcf8833fdbf76e30316aca43ccde56ce361ab6", kill_on_drop: false }` [INFO] [stderr] warning: field is never read: `incoming_tx` [INFO] [stderr] --> src/election/mod.rs:30:5 [INFO] [stderr] | [INFO] [stderr] 30 | incoming_tx: Sender>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] note: `RaftElectionState` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] --> src/election/mod.rs:18:10 [INFO] [stderr] | [INFO] [stderr] 18 | #[derive(Debug)] [INFO] [stderr] | ^^^^^ [INFO] [stderr] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: `almost-raft` (lib) generated 1 warning [INFO] [stderr] warning: trailing semicolon in macro used in expression position [INFO] [stderr] --> src/election/mod.rs:515:39 [INFO] [stderr] | [INFO] [stderr] 515 | Duration::from_millis($ex); [INFO] [stderr] | ^ [INFO] [stderr] ... [INFO] [stderr] 561 | advance(d!(timeout)).await; [INFO] [stderr] | ----------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(semicolon_in_expressions_from_macros)]` on by default [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] = note: for more information, see issue #79813 [INFO] [stderr] = note: this warning originates in the macro `d` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: trailing semicolon in macro used in expression position [INFO] [stderr] --> src/election/mod.rs:515:39 [INFO] [stderr] | [INFO] [stderr] 515 | Duration::from_millis($ex); [INFO] [stderr] | ^ [INFO] [stderr] ... [INFO] [stderr] 570 | advance(d!(timeout)).await; [INFO] [stderr] | ----------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] = note: for more information, see issue #79813 [INFO] [stderr] = note: this warning originates in the macro `d` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: trailing semicolon in macro used in expression position [INFO] [stderr] --> src/election/mod.rs:515:39 [INFO] [stderr] | [INFO] [stderr] 515 | Duration::from_millis($ex); [INFO] [stderr] | ^ [INFO] [stderr] ... [INFO] [stderr] 580 | advance(d!(timeout)).await; [INFO] [stderr] | ----------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] = note: for more information, see issue #79813 [INFO] [stderr] = note: this warning originates in the macro `d` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: trailing semicolon in macro used in expression position [INFO] [stderr] --> src/election/mod.rs:515:39 [INFO] [stderr] | [INFO] [stderr] 515 | Duration::from_millis($ex); [INFO] [stderr] | ^ [INFO] [stderr] ... [INFO] [stderr] 620 | advance(d!(timeout)).await; [INFO] [stderr] | ----------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] = note: for more information, see issue #79813 [INFO] [stderr] = note: this warning originates in the macro `d` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: trailing semicolon in macro used in expression position [INFO] [stderr] --> src/election/mod.rs:515:39 [INFO] [stderr] | [INFO] [stderr] 515 | Duration::from_millis($ex); [INFO] [stderr] | ^ [INFO] [stderr] ... [INFO] [stderr] 693 | advance(d!(timeout)).await; [INFO] [stderr] | ----------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] = note: for more information, see issue #79813 [INFO] [stderr] = note: this warning originates in the macro `d` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: trailing semicolon in macro used in expression position [INFO] [stderr] --> src/election/mod.rs:515:39 [INFO] [stderr] | [INFO] [stderr] 515 | Duration::from_millis($ex); [INFO] [stderr] | ^ [INFO] [stderr] ... [INFO] [stderr] 708 | advance(d!(timeout)).await; [INFO] [stderr] | ----------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] = note: for more information, see issue #79813 [INFO] [stderr] = note: this warning originates in the macro `d` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: trailing semicolon in macro used in expression position [INFO] [stderr] --> src/election/mod.rs:515:39 [INFO] [stderr] | [INFO] [stderr] 515 | Duration::from_millis($ex); [INFO] [stderr] | ^ [INFO] [stderr] ... [INFO] [stderr] 829 | tokio::time::sleep(d!(85)).await; [INFO] [stderr] | ------ in this macro invocation [INFO] [stderr] | [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] = note: for more information, see issue #79813 [INFO] [stderr] = note: this warning originates in the macro `d` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/election/mod.rs:530:13 [INFO] [stderr] | [INFO] [stderr] 530 | self.sender.send(msg).await; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_must_use)]` on by default [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/election/mod.rs:566:9 [INFO] [stderr] | [INFO] [stderr] 566 | tx.send(Message::ControlAddNode(dummy)).await; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/election/mod.rs:568:9 [INFO] [stderr] | [INFO] [stderr] 568 | tx.send(Message::ControlAddNode(dummy)).await; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/election/mod.rs:578:9 [INFO] [stderr] | [INFO] [stderr] 578 | tx.send(Message::ControlAddNode(dummy)).await; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/election/mod.rs:631:9 [INFO] [stderr] | [INFO] [stderr] 631 | / tx_to_raft [INFO] [stderr] 632 | | .send(Message::RequestVoteResponse { [INFO] [stderr] 633 | | vote: true, [INFO] [stderr] 634 | | term: 1, [INFO] [stderr] 635 | | }) [INFO] [stderr] 636 | | .await; [INFO] [stderr] | |___________________^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/election/mod.rs:637:9 [INFO] [stderr] | [INFO] [stderr] 637 | / tx_to_raft [INFO] [stderr] 638 | | .send(Message::RequestVoteResponse { [INFO] [stderr] 639 | | vote: true, [INFO] [stderr] 640 | | term: 1, [INFO] [stderr] 641 | | }) [INFO] [stderr] 642 | | .await; [INFO] [stderr] | |___________________^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/election/mod.rs:643:9 [INFO] [stderr] | [INFO] [stderr] 643 | / tx_to_raft [INFO] [stderr] 644 | | .send(Message::RequestVoteResponse { [INFO] [stderr] 645 | | vote: true, [INFO] [stderr] 646 | | term: 1, [INFO] [stderr] 647 | | }) [INFO] [stderr] 648 | | .await; [INFO] [stderr] | |___________________^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/election/mod.rs:701:9 [INFO] [stderr] | [INFO] [stderr] 701 | / tx_to_raft [INFO] [stderr] 702 | | .send(Message::RequestVoteResponse { [INFO] [stderr] 703 | | vote: true, [INFO] [stderr] 704 | | term: 1, [INFO] [stderr] 705 | | }) [INFO] [stderr] 706 | | .await; [INFO] [stderr] | |___________________^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/election/mod.rs:730:13 [INFO] [stderr] | [INFO] [stderr] 730 | / tx_to_raft [INFO] [stderr] 731 | | .send(Message::RequestVoteResponse { [INFO] [stderr] 732 | | vote: true, [INFO] [stderr] 733 | | term: 2, [INFO] [stderr] 734 | | }) [INFO] [stderr] 735 | | .await; [INFO] [stderr] | |_______________________^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/election/mod.rs:791:9 [INFO] [stderr] | [INFO] [stderr] 791 | / tx_to_raft_node_1 [INFO] [stderr] 792 | | .send(Message::ControlAddNode(new_node( [INFO] [stderr] 793 | | self_id_2.as_str(), [INFO] [stderr] 794 | | tx_to_raft_node_2.clone(), [INFO] [stderr] 795 | | ))) [INFO] [stderr] 796 | | .await; [INFO] [stderr] | |___________________^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/election/mod.rs:797:9 [INFO] [stderr] | [INFO] [stderr] 797 | / tx_to_raft_node_1 [INFO] [stderr] 798 | | .send(Message::ControlAddNode(new_node( [INFO] [stderr] 799 | | self_id_3.as_str(), [INFO] [stderr] 800 | | tx_to_raft_node_3.clone(), [INFO] [stderr] 801 | | ))) [INFO] [stderr] 802 | | .await; [INFO] [stderr] | |___________________^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/election/mod.rs:804:9 [INFO] [stderr] | [INFO] [stderr] 804 | / tx_to_raft_node_2 [INFO] [stderr] 805 | | .send(Message::ControlAddNode(new_node( [INFO] [stderr] 806 | | self_id_1.as_str(), [INFO] [stderr] 807 | | tx_to_raft_node_1.clone(), [INFO] [stderr] 808 | | ))) [INFO] [stderr] 809 | | .await; [INFO] [stderr] | |___________________^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/election/mod.rs:810:9 [INFO] [stderr] | [INFO] [stderr] 810 | / tx_to_raft_node_2 [INFO] [stderr] 811 | | .send(Message::ControlAddNode(new_node( [INFO] [stderr] 812 | | self_id_3.as_str(), [INFO] [stderr] 813 | | tx_to_raft_node_3.clone(), [INFO] [stderr] 814 | | ))) [INFO] [stderr] 815 | | .await; [INFO] [stderr] | |___________________^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/election/mod.rs:816:9 [INFO] [stderr] | [INFO] [stderr] 816 | / tx_to_raft_node_3 [INFO] [stderr] 817 | | .send(Message::ControlAddNode(new_node( [INFO] [stderr] 818 | | self_id_1.as_str(), [INFO] [stderr] 819 | | tx_to_raft_node_1.clone(), [INFO] [stderr] 820 | | ))) [INFO] [stderr] 821 | | .await; [INFO] [stderr] | |___________________^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/election/mod.rs:822:9 [INFO] [stderr] | [INFO] [stderr] 822 | / tx_to_raft_node_3 [INFO] [stderr] 823 | | .send(Message::ControlAddNode(new_node( [INFO] [stderr] 824 | | self_id_2.as_str(), [INFO] [stderr] 825 | | tx_to_raft_node_2.clone(), [INFO] [stderr] 826 | | ))) [INFO] [stderr] 827 | | .await; [INFO] [stderr] | |___________________^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: `almost-raft` (lib test) generated 23 warnings (1 duplicate) [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.04s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/almost_raft-7e3c440914e23e1b) [INFO] [stdout] [INFO] [stdout] running 4 tests [INFO] [stdout] Apr 13 07:24:34.126 TRACE almost_raft::election::test: 7175 [INFO] [stdout] Apr 13 07:24:34.126  INFO almost_raft::election: [node: raft-node-1] starting election process... [INFO] [stdout] Apr 13 07:24:34.127  INFO almost_raft::election: [node: 5d4da8ed-dad9-4f46-8460-d6e96826e516] starting election process... [INFO] [stdout] Apr 13 07:24:34.126  INFO almost_raft::election: [node: raft-node] starting election process... [INFO] [stdout] Apr 13 07:24:34.126  INFO almost_raft::election: [node: 776f0991-aac1-4c02-b20d-630eb86d900a] starting election process... [INFO] [stdout] Apr 13 07:24:34.127 TRACE almost_raft::election: [node: raft-node-1] setting new timeout to 60 [INFO] [stdout] Apr 13 07:24:34.127 TRACE almost_raft::election: [node: 5d4da8ed-dad9-4f46-8460-d6e96826e516] setting new timeout to 7175 [INFO] [stdout] Apr 13 07:24:34.127 TRACE almost_raft::election: [node: raft-node] setting new timeout to 5017 [INFO] [stdout] Apr 13 07:24:34.127 TRACE almost_raft::election: [node: 776f0991-aac1-4c02-b20d-630eb86d900a] setting new timeout to 7757 [INFO] [stdout] Apr 13 07:24:34.127 TRACE almost_raft::election: [node: 5d4da8ed-dad9-4f46-8460-d6e96826e516] got message Some(ControlAddNode(NodeDummy { id: "1", sender: Sender { chan: Tx { inner: Chan { tx: Tx { block_tail: 0x7f1228005cb0, tail_position: 0 }, semaphore: (Semaphore { permits: 10 }, 10), rx_waker: AtomicWaker, tx_count: 3, rx_fields: "..." } } } })) [INFO] [stdout] Apr 13 07:24:34.127 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: 0x7f1224004830, tail_position: 2 }, semaphore: (Semaphore { permits: 8 }, 10), rx_waker: AtomicWaker, tx_count: 4, rx_fields: "..." } } } })) [INFO] [stdout] Apr 13 07:24:34.127 TRACE almost_raft::election: [node: 5d4da8ed-dad9-4f46-8460-d6e96826e516] remaining_election_timeout: 0, remaining_heartbeat_interval: 1000 [INFO] [stdout] Apr 13 07:24:34.127 TRACE almost_raft::election: [node: 5d4da8ed-dad9-4f46-8460-d6e96826e516] setting new timeout to 0 [INFO] [stdout] Apr 13 07:24:34.127 TRACE almost_raft::election: [node: raft-node-1] remaining_election_timeout: 60, remaining_heartbeat_interval: 20 [INFO] [stdout] Apr 13 07:24:34.127 TRACE almost_raft::election: [node: 5d4da8ed-dad9-4f46-8460-d6e96826e516] got message Some(ControlAddNode(NodeDummy { id: "2", sender: Sender { chan: Tx { inner: Chan { tx: Tx { block_tail: 0x7f1228005cb0, tail_position: 0 }, semaphore: (Semaphore { permits: 10 }, 10), rx_waker: AtomicWaker, tx_count: 3, rx_fields: "..." } } } })) [INFO] [stdout] Apr 13 07:24:34.127 TRACE almost_raft::election: [node: 5d4da8ed-dad9-4f46-8460-d6e96826e516] remaining_election_timeout: 0, remaining_heartbeat_interval: 1000 [INFO] [stdout] Apr 13 07:24:34.127 TRACE almost_raft::election: [node: 5d4da8ed-dad9-4f46-8460-d6e96826e516] setting new timeout to 0 [INFO] [stdout] Apr 13 07:24:34.127 TRACE almost_raft::election: [node: raft-node-1] setting new timeout to 60 [INFO] [stdout] Apr 13 07:24:34.127 TRACE almost_raft::election: [node: 5d4da8ed-dad9-4f46-8460-d6e96826e516] not enough node [INFO] [stdout] Apr 13 07:24:34.127 TRACE almost_raft::election: [node: 5d4da8ed-dad9-4f46-8460-d6e96826e516] remaining_election_timeout: 7175, remaining_heartbeat_interval: 1000 [INFO] [stdout] Apr 13 07:24:34.127 TRACE almost_raft::election: [node: 5d4da8ed-dad9-4f46-8460-d6e96826e516] setting new timeout to 7175 [INFO] [stdout] Apr 13 07:24:34.127 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: 0x7f12240055c0, tail_position: 2 }, semaphore: (Semaphore { permits: 8 }, 10), rx_waker: AtomicWaker, tx_count: 4, rx_fields: "..." } } } })) [INFO] [stdout] Apr 13 07:24:34.127 TRACE almost_raft::election: [node: raft-node-1] remaining_election_timeout: 60, remaining_heartbeat_interval: 20 [INFO] [stdout] Apr 13 07:24:34.127 TRACE almost_raft::election: [node: raft-node-1] setting new timeout to 60 [INFO] [stdout] Apr 13 07:24:34.127  INFO almost_raft::election: [node: raft-node-2] starting election process... [INFO] [stdout] Apr 13 07:24:34.127 TRACE almost_raft::election: [node: raft-node-2] setting new timeout to 70 [INFO] [stdout] Apr 13 07:24:34.128 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: 0x7f1224003aa0, tail_position: 2 }, semaphore: (Semaphore { permits: 10 }, 10), rx_waker: AtomicWaker, tx_count: 4, rx_fields: "..." } } } })) [INFO] [stdout] Apr 13 07:24:34.128 TRACE almost_raft::election: [node: raft-node-2] remaining_election_timeout: 70, remaining_heartbeat_interval: 20 [INFO] [stdout] Apr 13 07:24:34.128 TRACE almost_raft::election: [node: raft-node-2] setting new timeout to 70 [INFO] [stdout] Apr 13 07:24:34.128 DEBUG almost_raft::election: [node: raft-node] updating node state to NodeState::Candidate [INFO] [stdout] Apr 13 07:24:34.128 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: 0x7f12240055c0, tail_position: 2 }, semaphore: (Semaphore { permits: 8 }, 10), rx_waker: AtomicWaker, tx_count: 4, rx_fields: "..." } } } })) [INFO] [stdout] Apr 13 07:24:34.128 DEBUG almost_raft::election: [node: 776f0991-aac1-4c02-b20d-630eb86d900a] updating node state to NodeState::Candidate [INFO] [stdout] Apr 13 07:24:34.128 TRACE almost_raft::election: [node: raft-node] updating term from 0 to 1 [INFO] [stdout] Apr 13 07:24:34.128 TRACE almost_raft::election: [node: 776f0991-aac1-4c02-b20d-630eb86d900a] updating term from 0 to 1 [INFO] [stdout] Apr 13 07:24:34.128 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: 0x7f1218003400, tail_position: 0 }, semaphore: (Semaphore { permits: 10 }, 10), rx_waker: AtomicWaker, tx_count: 5, rx_fields: "..." } } } } [INFO] [stdout] Apr 13 07:24:34.128 TRACE almost_raft::election: [node: raft-node-2] remaining_election_timeout: 70, remaining_heartbeat_interval: 20 [INFO] [stdout] Apr 13 07:24:34.128 TRACE almost_raft::election::test: [node: 1] sending message RequestVote { node_id: "raft-node", term: 1 } [INFO] [stdout] Apr 13 07:24:34.128 TRACE almost_raft::election: [node: 776f0991-aac1-4c02-b20d-630eb86d900a] sending vote request for term 1 to: NodeDummy { id: "1", sender: Sender { chan: Tx { inner: Chan { tx: Tx { block_tail: 0x7f1220003400, tail_position: 0 }, semaphore: (Semaphore { permits: 10 }, 10), rx_waker: AtomicWaker, tx_count: 5, rx_fields: "..." } } } } [INFO] [stdout] Apr 13 07:24:34.128 TRACE almost_raft::election: [node: raft-node-2] setting new timeout to 70 [INFO] [stdout] Apr 13 07:24:34.128 TRACE almost_raft::election::test: [node: 1] sending message RequestVote { node_id: "776f0991-aac1-4c02-b20d-630eb86d900a", term: 1 } [INFO] [stdout] Apr 13 07:24:34.128 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: 0x7f1218003400, tail_position: 1 }, semaphore: (Semaphore { permits: 9 }, 10), rx_waker: AtomicWaker, tx_count: 5, rx_fields: "..." } } } } [INFO] [stdout] Apr 13 07:24:34.128 TRACE almost_raft::election::test: [node: 2] sending message RequestVote { node_id: "raft-node", term: 1 } [INFO] [stdout] Apr 13 07:24:34.128 TRACE almost_raft::election: [node: 776f0991-aac1-4c02-b20d-630eb86d900a] sending vote request for term 1 to: NodeDummy { id: "2", sender: Sender { chan: Tx { inner: Chan { tx: Tx { block_tail: 0x7f1220003400, tail_position: 1 }, semaphore: (Semaphore { permits: 9 }, 10), rx_waker: AtomicWaker, tx_count: 5, rx_fields: "..." } } } } [INFO] [stdout] Apr 13 07:24:34.128  INFO almost_raft::election: [node: raft-node-3] starting election process... [INFO] [stdout] Apr 13 07:24:34.128 TRACE almost_raft::election::test: [node: 2] sending message RequestVote { node_id: "776f0991-aac1-4c02-b20d-630eb86d900a", term: 1 } [INFO] [stdout] Apr 13 07:24:34.128 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: 0x7f1218003400, tail_position: 2 }, semaphore: (Semaphore { permits: 8 }, 10), rx_waker: AtomicWaker, tx_count: 5, rx_fields: "..." } } } } [INFO] [stdout] Apr 13 07:24:34.128 TRACE almost_raft::election::test: [node: 3] sending message RequestVote { node_id: "raft-node", term: 1 } [INFO] [stdout] Apr 13 07:24:34.128 TRACE almost_raft::election: [node: 776f0991-aac1-4c02-b20d-630eb86d900a] sending vote request for term 1 to: NodeDummy { id: "3", sender: Sender { chan: Tx { inner: Chan { tx: Tx { block_tail: 0x7f1220003400, tail_position: 2 }, semaphore: (Semaphore { permits: 8 }, 10), rx_waker: AtomicWaker, tx_count: 5, rx_fields: "..." } } } } [INFO] [stdout] Apr 13 07:24:34.128 TRACE almost_raft::election: [node: raft-node-3] setting new timeout to 80 [INFO] [stdout] Apr 13 07:24:34.128 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: 0x7f1218003400, tail_position: 3 }, semaphore: (Semaphore { permits: 7 }, 10), rx_waker: AtomicWaker, tx_count: 5, rx_fields: "..." } } } } [INFO] [stdout] Apr 13 07:24:34.128 TRACE almost_raft::election::test: [node: 3] sending message RequestVote { node_id: "776f0991-aac1-4c02-b20d-630eb86d900a", term: 1 } [INFO] [stdout] Apr 13 07:24:34.128 TRACE almost_raft::election::test: [node: 4] sending message RequestVote { node_id: "raft-node", term: 1 } [INFO] [stdout] Apr 13 07:24:34.128 TRACE almost_raft::election: [node: 776f0991-aac1-4c02-b20d-630eb86d900a] sending vote request for term 1 to: NodeDummy { id: "3", sender: Sender { chan: Tx { inner: Chan { tx: Tx { block_tail: 0x7f1220003400, tail_position: 3 }, semaphore: (Semaphore { permits: 7 }, 10), rx_waker: AtomicWaker, tx_count: 5, rx_fields: "..." } } } } [INFO] [stdout] Apr 13 07:24:34.128 TRACE almost_raft::election: [node: raft-node] remaining_election_timeout: 5017, remaining_heartbeat_interval: 1000 [INFO] [stdout] Apr 13 07:24:34.128 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: 0x7f1224003aa0, tail_position: 2 }, semaphore: (Semaphore { permits: 10 }, 10), rx_waker: AtomicWaker, tx_count: 4, rx_fields: "..." } } } })) [INFO] [stdout] Apr 13 07:24:34.128 TRACE almost_raft::election: [node: raft-node] setting new timeout to 5017 [INFO] [stdout] Apr 13 07:24:34.128 TRACE almost_raft::election::test: [node: 3] sending message RequestVote { node_id: "776f0991-aac1-4c02-b20d-630eb86d900a", term: 1 } [INFO] [stdout] Apr 13 07:24:34.128 TRACE almost_raft::election: [node: 776f0991-aac1-4c02-b20d-630eb86d900a] remaining_election_timeout: 7757, remaining_heartbeat_interval: 1000 [INFO] [stdout] Apr 13 07:24:34.128 TRACE almost_raft::election: [node: raft-node-3] remaining_election_timeout: 80, remaining_heartbeat_interval: 20 [INFO] [stdout] Apr 13 07:24:34.128 TRACE almost_raft::election: [node: raft-node] got message Some(RequestVoteResponse { term: 1, vote: true }) [INFO] [stdout] Apr 13 07:24:34.128 TRACE almost_raft::election: [node: 776f0991-aac1-4c02-b20d-630eb86d900a] setting new timeout to 7757 [INFO] [stdout] Apr 13 07:24:34.128 TRACE almost_raft::election: [node: raft-node] remaining_election_timeout: 5017, remaining_heartbeat_interval: 1000 [INFO] [stdout] Apr 13 07:24:34.128 TRACE almost_raft::election: [node: raft-node-3] setting new timeout to 80 [INFO] [stdout] Apr 13 07:24:34.128 TRACE almost_raft::election: [node: raft-node] setting new timeout to 5017 [INFO] [stdout] Apr 13 07:24:34.129 TRACE almost_raft::election::test: Some(RequestVote { node_id: "776f0991-aac1-4c02-b20d-630eb86d900a", term: 1 }) [INFO] [stdout] Apr 13 07:24:34.129 TRACE almost_raft::election::test: Some(RequestVote { node_id: "776f0991-aac1-4c02-b20d-630eb86d900a", term: 1 }) [INFO] [stdout] Apr 13 07:24:34.129 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: 0x7f1224004830, tail_position: 2 }, semaphore: (Semaphore { permits: 10 }, 10), rx_waker: AtomicWaker, tx_count: 4, rx_fields: "..." } } } })) [INFO] [stdout] Apr 13 07:24:34.129 TRACE almost_raft::election::test: Some(RequestVote { node_id: "776f0991-aac1-4c02-b20d-630eb86d900a", term: 1 }) [INFO] [stdout] Apr 13 07:24:34.129 TRACE almost_raft::election::test: Some(RequestVote { node_id: "776f0991-aac1-4c02-b20d-630eb86d900a", term: 1 }) [INFO] [stdout] Apr 13 07:24:34.129 TRACE almost_raft::election: [node: raft-node-3] remaining_election_timeout: 80, remaining_heartbeat_interval: 20 [INFO] [stdout] Apr 13 07:24:34.129 TRACE almost_raft::election: [node: 776f0991-aac1-4c02-b20d-630eb86d900a] got message Some(RequestVoteResponse { term: 1, vote: true }) [INFO] [stdout] Apr 13 07:24:34.129 TRACE almost_raft::election: [node: raft-node-3] setting new timeout to 80 [INFO] [stdout] Apr 13 07:24:34.129 TRACE almost_raft::election: [node: 776f0991-aac1-4c02-b20d-630eb86d900a] remaining_election_timeout: 7757, remaining_heartbeat_interval: 1000 [INFO] [stdout] Apr 13 07:24:34.129 TRACE almost_raft::election: [node: 776f0991-aac1-4c02-b20d-630eb86d900a] setting new timeout to 7757 [INFO] [stdout] Apr 13 07:24:34.129 TRACE almost_raft::election: [node: 776f0991-aac1-4c02-b20d-630eb86d900a] got message Some(RequestVoteResponse { term: 1, vote: true }) [INFO] [stdout] Apr 13 07:24:34.129 DEBUG almost_raft::election: [node: 776f0991-aac1-4c02-b20d-630eb86d900a] updating node state to NodeState::Leader [INFO] [stdout] Apr 13 07:24:34.129 TRACE almost_raft::election::test: [node: 1] sending message HeartBeat { leader_node_id: "776f0991-aac1-4c02-b20d-630eb86d900a", term: 1 } [INFO] [stdout] Apr 13 07:24:34.129 TRACE almost_raft::election: [node: 776f0991-aac1-4c02-b20d-630eb86d900a] sent heartbeat [INFO] [stdout] Apr 13 07:24:34.129 TRACE almost_raft::election::test: [node: 2] sending message HeartBeat { leader_node_id: "776f0991-aac1-4c02-b20d-630eb86d900a", term: 1 } [INFO] [stdout] Apr 13 07:24:34.129 TRACE almost_raft::election: [node: 776f0991-aac1-4c02-b20d-630eb86d900a] sent heartbeat [INFO] [stdout] Apr 13 07:24:34.129 TRACE almost_raft::election::test: [node: 3] sending message HeartBeat { leader_node_id: "776f0991-aac1-4c02-b20d-630eb86d900a", term: 1 } [INFO] [stdout] Apr 13 07:24:34.129 TRACE almost_raft::election: [node: 776f0991-aac1-4c02-b20d-630eb86d900a] sent heartbeat [INFO] [stdout] Apr 13 07:24:34.129 TRACE almost_raft::election::test: [node: 3] sending message HeartBeat { leader_node_id: "776f0991-aac1-4c02-b20d-630eb86d900a", term: 1 } [INFO] [stdout] Apr 13 07:24:34.129 TRACE almost_raft::election: [node: 776f0991-aac1-4c02-b20d-630eb86d900a] sent heartbeat [INFO] [stdout] Apr 13 07:24:34.129 TRACE almost_raft::election: [node: 776f0991-aac1-4c02-b20d-630eb86d900a] remaining_election_timeout: 7757, remaining_heartbeat_interval: 1000 [INFO] [stdout] Apr 13 07:24:34.129 TRACE almost_raft::election: [node: 776f0991-aac1-4c02-b20d-630eb86d900a] setting new timeout to 1000 [INFO] [stdout] Apr 13 07:24:34.129 TRACE almost_raft::election: [node: 776f0991-aac1-4c02-b20d-630eb86d900a] got message Some(RequestVoteResponse { term: 1, vote: true }) [INFO] [stdout] Apr 13 07:24:34.129 TRACE almost_raft::election: [node: 776f0991-aac1-4c02-b20d-630eb86d900a] remaining_election_timeout: 7757, remaining_heartbeat_interval: 7757 [INFO] [stdout] Apr 13 07:24:34.130 TRACE almost_raft::election: [node: 776f0991-aac1-4c02-b20d-630eb86d900a] setting new timeout to 7757 [INFO] [stdout] Apr 13 07:24:34.130 DEBUG almost_raft::election: [node: raft-node] updating node state to NodeState::Candidate [INFO] [stdout] Apr 13 07:24:34.130 TRACE almost_raft::election: [node: raft-node] updating term from 1 to 2 [INFO] [stdout] Apr 13 07:24:34.130 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: 0x7f1218003400, tail_position: 4 }, semaphore: (Semaphore { permits: 10 }, 10), rx_waker: AtomicWaker, tx_count: 5, rx_fields: "..." } } } } [INFO] [stdout] Apr 13 07:24:34.130 TRACE almost_raft::election::test: [node: 1] sending message RequestVote { node_id: "raft-node", term: 2 } [INFO] [stdout] Apr 13 07:24:34.130 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: 0x7f1218003400, tail_position: 5 }, semaphore: (Semaphore { permits: 9 }, 10), rx_waker: AtomicWaker, tx_count: 5, rx_fields: "..." } } } } [INFO] [stdout] Apr 13 07:24:34.130 TRACE almost_raft::election::test: [node: 2] sending message RequestVote { node_id: "raft-node", term: 2 } [INFO] [stdout] Apr 13 07:24:34.130 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: 0x7f1218003400, tail_position: 6 }, semaphore: (Semaphore { permits: 8 }, 10), rx_waker: AtomicWaker, tx_count: 5, rx_fields: "..." } } } } [INFO] [stdout] Apr 13 07:24:34.130 TRACE almost_raft::election::test: [node: 3] sending message RequestVote { node_id: "raft-node", term: 2 } [INFO] [stdout] Apr 13 07:24:34.130 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: 0x7f1218003400, tail_position: 7 }, semaphore: (Semaphore { permits: 7 }, 10), rx_waker: AtomicWaker, tx_count: 5, rx_fields: "..." } } } } [INFO] [stdout] Apr 13 07:24:34.130 TRACE almost_raft::election::test: [node: 4] sending message RequestVote { node_id: "raft-node", term: 2 } [INFO] [stdout] Apr 13 07:24:34.130 TRACE almost_raft::election: [node: raft-node] remaining_election_timeout: 5017, remaining_heartbeat_interval: 1000 [INFO] [stdout] Apr 13 07:24:34.130 TRACE almost_raft::election: [node: raft-node] setting new timeout to 5017 [INFO] [stdout] Apr 13 07:24:34.130 TRACE almost_raft::election::test: multi-term: RequestVote { node_id: "raft-node", term: 2 } [INFO] [stdout] Apr 13 07:24:34.130 TRACE almost_raft::election::test: Some(RequestVote { node_id: "raft-node", term: 2 }) [INFO] [stdout] Apr 13 07:24:34.130 TRACE almost_raft::election::test: Some(RequestVote { node_id: "raft-node", term: 2 }) [INFO] [stdout] Apr 13 07:24:34.130 TRACE almost_raft::election::test: Some(RequestVote { node_id: "raft-node", term: 2 }) [INFO] [stdout] Apr 13 07:24:34.130 TRACE almost_raft::election: [node: raft-node] got message Some(RequestVoteResponse { term: 2, vote: true }) [INFO] [stdout] Apr 13 07:24:34.130 TRACE almost_raft::election: [node: raft-node] remaining_election_timeout: 5017, remaining_heartbeat_interval: 1000 [INFO] [stdout] Apr 13 07:24:34.131 TRACE almost_raft::election: [node: raft-node] setting new timeout to 5017 [INFO] [stdout] Apr 13 07:24:34.131 TRACE almost_raft::election: [node: raft-node] got message Some(RequestVoteResponse { term: 2, vote: true }) [INFO] [stdout] Apr 13 07:24:34.131 DEBUG almost_raft::election: [node: raft-node] updating node state to NodeState::Leader [INFO] [stdout] Apr 13 07:24:34.131 TRACE almost_raft::election::test: [node: 1] sending message HeartBeat { leader_node_id: "raft-node", term: 2 } [INFO] [stdout] Apr 13 07:24:34.131 TRACE almost_raft::election: [node: raft-node] sent heartbeat [INFO] [stdout] Apr 13 07:24:34.131 TRACE almost_raft::election::test: [node: 2] sending message HeartBeat { leader_node_id: "raft-node", term: 2 } [INFO] [stdout] Apr 13 07:24:34.131 TRACE almost_raft::election: [node: raft-node] sent heartbeat [INFO] [stdout] Apr 13 07:24:34.131 TRACE almost_raft::election::test: [node: 3] sending message HeartBeat { leader_node_id: "raft-node", term: 2 } [INFO] [stdout] Apr 13 07:24:34.131 TRACE almost_raft::election: [node: raft-node] sent heartbeat [INFO] [stdout] Apr 13 07:24:34.131 TRACE almost_raft::election::test: [node: 4] sending message HeartBeat { leader_node_id: "raft-node", term: 2 } [INFO] [stdout] Apr 13 07:24:34.131 TRACE almost_raft::election: [node: raft-node] sent heartbeat [INFO] [stdout] Apr 13 07:24:34.131 TRACE almost_raft::election: [node: raft-node] remaining_election_timeout: 5017, remaining_heartbeat_interval: 1000 [INFO] [stdout] Apr 13 07:24:34.131 TRACE almost_raft::election: [node: raft-node] setting new timeout to 1000 [INFO] [stdout] test election::test::test_raft_election_multi_term ... ok [INFO] [stdout] test election::test::test_raft_election ... ok [INFO] [stdout] Apr 13 07:24:34.133 TRACE almost_raft::election: [node: 5d4da8ed-dad9-4f46-8460-d6e96826e516] got message Some(ControlAddNode(NodeDummy { id: "3", sender: Sender { chan: Tx { inner: Chan { tx: Tx { block_tail: 0x7f1228005cb0, tail_position: 0 }, semaphore: (Semaphore { permits: 10 }, 10), rx_waker: AtomicWaker, tx_count: 4, rx_fields: "..." } } } })) [INFO] [stdout] Apr 13 07:24:34.133 TRACE almost_raft::election: [node: 5d4da8ed-dad9-4f46-8460-d6e96826e516] remaining_election_timeout: 7169, remaining_heartbeat_interval: 1000 [INFO] [stdout] Apr 13 07:24:34.133 TRACE almost_raft::election: [node: 5d4da8ed-dad9-4f46-8460-d6e96826e516] setting new timeout to 7169 [INFO] [stdout] Apr 13 07:24:34.133 DEBUG almost_raft::election: [node: 5d4da8ed-dad9-4f46-8460-d6e96826e516] updating node state to NodeState::Candidate [INFO] [stdout] Apr 13 07:24:34.134 TRACE almost_raft::election: [node: 5d4da8ed-dad9-4f46-8460-d6e96826e516] updating term from 0 to 1 [INFO] [stdout] Apr 13 07:24:34.134 TRACE almost_raft::election: [node: 5d4da8ed-dad9-4f46-8460-d6e96826e516] sending vote request for term 1 to: NodeDummy { id: "1", sender: Sender { chan: Tx { inner: Chan { tx: Tx { block_tail: 0x7f1228005cb0, tail_position: 0 }, semaphore: (Semaphore { permits: 10 }, 10), rx_waker: AtomicWaker, tx_count: 4, rx_fields: "..." } } } } [INFO] [stdout] Apr 13 07:24:34.134 TRACE almost_raft::election::test: [node: 1] sending message RequestVote { node_id: "5d4da8ed-dad9-4f46-8460-d6e96826e516", term: 1 } [INFO] [stdout] Apr 13 07:24:34.134 TRACE almost_raft::election: [node: 5d4da8ed-dad9-4f46-8460-d6e96826e516] sending vote request for term 1 to: NodeDummy { id: "2", sender: Sender { chan: Tx { inner: Chan { tx: Tx { block_tail: 0x7f1228005cb0, tail_position: 1 }, semaphore: (Semaphore { permits: 9 }, 10), rx_waker: AtomicWaker, tx_count: 4, rx_fields: "..." } } } } [INFO] [stdout] Apr 13 07:24:34.134 TRACE almost_raft::election::test: [node: 2] sending message RequestVote { node_id: "5d4da8ed-dad9-4f46-8460-d6e96826e516", term: 1 } [INFO] [stdout] Apr 13 07:24:34.134 TRACE almost_raft::election: [node: 5d4da8ed-dad9-4f46-8460-d6e96826e516] sending vote request for term 1 to: NodeDummy { id: "3", sender: Sender { chan: Tx { inner: Chan { tx: Tx { block_tail: 0x7f1228005cb0, tail_position: 2 }, semaphore: (Semaphore { permits: 8 }, 10), rx_waker: AtomicWaker, tx_count: 4, rx_fields: "..." } } } } [INFO] [stdout] Apr 13 07:24:34.134 TRACE almost_raft::election::test: [node: 3] sending message RequestVote { node_id: "5d4da8ed-dad9-4f46-8460-d6e96826e516", term: 1 } [INFO] [stdout] Apr 13 07:24:34.134 TRACE almost_raft::election: [node: 5d4da8ed-dad9-4f46-8460-d6e96826e516] remaining_election_timeout: 7175, remaining_heartbeat_interval: 1000 [INFO] [stdout] Apr 13 07:24:34.134 TRACE almost_raft::election: [node: 5d4da8ed-dad9-4f46-8460-d6e96826e516] setting new timeout to 7175 [INFO] [stdout] Apr 13 07:24:34.134 TRACE almost_raft::election::test: Ok(Some(RequestVote { node_id: "5d4da8ed-dad9-4f46-8460-d6e96826e516", term: 1 })) [INFO] [stdout] test election::test::test_min_node ... ok [INFO] [stdout] Apr 13 07:24:34.188 DEBUG almost_raft::election: [node: raft-node-1] updating node state to NodeState::Candidate [INFO] [stdout] Apr 13 07:24:34.188 TRACE almost_raft::election: [node: raft-node-1] updating term from 0 to 1 [INFO] [stdout] Apr 13 07:24:34.188 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: 0x7f1224004830, tail_position: 2 }, semaphore: (Semaphore { permits: 10 }, 10), rx_waker: AtomicWaker, tx_count: 4, rx_fields: "..." } } } } [INFO] [stdout] Apr 13 07:24:34.189 TRACE almost_raft::election::test: [node: raft-node-2] sending message RequestVote { node_id: "raft-node-1", term: 1 } [INFO] [stdout] Apr 13 07:24:34.189 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: 0x7f12240055c0, tail_position: 2 }, semaphore: (Semaphore { permits: 10 }, 10), rx_waker: AtomicWaker, tx_count: 4, rx_fields: "..." } } } } [INFO] [stdout] Apr 13 07:24:34.189 TRACE almost_raft::election::test: [node: raft-node-3] sending message RequestVote { node_id: "raft-node-1", term: 1 } [INFO] [stdout] Apr 13 07:24:34.189 TRACE almost_raft::election: [node: raft-node-1] remaining_election_timeout: 60, remaining_heartbeat_interval: 20 [INFO] [stdout] Apr 13 07:24:34.189 TRACE almost_raft::election: [node: raft-node-1] setting new timeout to 60 [INFO] [stdout] Apr 13 07:24:34.189 TRACE almost_raft::election: [node: raft-node-2] got message Some(RequestVote { node_id: "raft-node-1", term: 1 }) [INFO] [stdout] Apr 13 07:24:34.189 TRACE almost_raft::election: [node: raft-node-2] updating term from 0 to 1 [INFO] [stdout] Apr 13 07:24:34.189 TRACE almost_raft::election: [node: raft-node-2] current term: 1, sending vote to node: raft-node-1, for term: 1 [INFO] [stdout] Apr 13 07:24:34.189 TRACE almost_raft::election::test: [node: raft-node-1] sending message RequestVoteResponse { term: 1, vote: true } [INFO] [stdout] Apr 13 07:24:34.189 TRACE almost_raft::election: [node: raft-node-2] remaining_election_timeout: 9, remaining_heartbeat_interval: 20 [INFO] [stdout] Apr 13 07:24:34.189 TRACE almost_raft::election: [node: raft-node-2] setting new timeout to 9 [INFO] [stdout] Apr 13 07:24:34.190 TRACE almost_raft::election: [node: raft-node-3] got message Some(RequestVote { node_id: "raft-node-1", term: 1 }) [INFO] [stdout] Apr 13 07:24:34.190 TRACE almost_raft::election: [node: raft-node-3] updating term from 0 to 1 [INFO] [stdout] Apr 13 07:24:34.190 TRACE almost_raft::election: [node: raft-node-3] current term: 1, sending vote to node: raft-node-1, for term: 1 [INFO] [stdout] Apr 13 07:24:34.190 TRACE almost_raft::election::test: [node: raft-node-1] sending message RequestVoteResponse { term: 1, vote: true } [INFO] [stdout] Apr 13 07:24:34.190 TRACE almost_raft::election: [node: raft-node-3] remaining_election_timeout: 19, remaining_heartbeat_interval: 20 [INFO] [stdout] Apr 13 07:24:34.190 TRACE almost_raft::election: [node: raft-node-3] setting new timeout to 19 [INFO] [stdout] Apr 13 07:24:34.190 TRACE almost_raft::election: [node: raft-node-1] got message Some(RequestVoteResponse { term: 1, vote: true }) [INFO] [stdout] Apr 13 07:24:34.190 DEBUG almost_raft::election: [node: raft-node-1] updating node state to NodeState::Leader [INFO] [stdout] Apr 13 07:24:34.190 TRACE almost_raft::election::test: [node: raft-node-2] sending message HeartBeat { leader_node_id: "raft-node-1", term: 1 } [INFO] [stdout] Apr 13 07:24:34.190 TRACE almost_raft::election: [node: raft-node-1] sent heartbeat [INFO] [stdout] Apr 13 07:24:34.190 TRACE almost_raft::election::test: [node: raft-node-3] sending message HeartBeat { leader_node_id: "raft-node-1", term: 1 } [INFO] [stdout] Apr 13 07:24:34.190 TRACE almost_raft::election: [node: raft-node-1] sent heartbeat [INFO] [stdout] Apr 13 07:24:34.191 TRACE almost_raft::election: [node: raft-node-1] remaining_election_timeout: 59, remaining_heartbeat_interval: 20 [INFO] [stdout] Apr 13 07:24:34.191 TRACE almost_raft::election: [node: raft-node-1] setting new timeout to 20 [INFO] [stdout] Apr 13 07:24:34.191 TRACE almost_raft::election: [node: raft-node-1] got message Some(RequestVoteResponse { term: 1, vote: true }) [INFO] [stdout] Apr 13 07:24:34.191 TRACE almost_raft::election: [node: raft-node-1] remaining_election_timeout: 59, remaining_heartbeat_interval: 59 [INFO] [stdout] Apr 13 07:24:34.191 TRACE almost_raft::election: [node: raft-node-1] setting new timeout to 59 [INFO] [stdout] Apr 13 07:24:34.191 TRACE almost_raft::election: [node: raft-node-2] got message Some(HeartBeat { leader_node_id: "raft-node-1", term: 1 }) [INFO] [stdout] Apr 13 07:24:34.191 TRACE almost_raft::election: [node: raft-node-2] updating term to 1 [INFO] [stdout] Apr 13 07:24:34.191 DEBUG almost_raft::election: [node: raft-node-2] leader changed to node: raft-node-1 [INFO] [stdout] Apr 13 07:24:34.191 TRACE almost_raft::election: [node: raft-node-2] remaining_election_timeout: 70, remaining_heartbeat_interval: 20 [INFO] [stdout] Apr 13 07:24:34.191 TRACE almost_raft::election: [node: raft-node-2] setting new timeout to 70 [INFO] [stdout] Apr 13 07:24:34.191 TRACE almost_raft::election: [node: raft-node-3] got message Some(HeartBeat { leader_node_id: "raft-node-1", term: 1 }) [INFO] [stdout] Apr 13 07:24:34.192 TRACE almost_raft::election: [node: raft-node-3] updating term to 1 [INFO] [stdout] Apr 13 07:24:34.192 DEBUG almost_raft::election: [node: raft-node-3] leader changed to node: raft-node-1 [INFO] [stdout] Apr 13 07:24:34.192 TRACE almost_raft::election: [node: raft-node-3] remaining_election_timeout: 80, remaining_heartbeat_interval: 20 [INFO] [stdout] Apr 13 07:24:34.192 TRACE almost_raft::election: [node: raft-node-3] setting new timeout to 80 [INFO] [stdout] Apr 13 07:24:34.212 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.10s [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" "37fed0184ab2d0439e87aa1450fcf8833fdbf76e30316aca43ccde56ce361ab6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "37fed0184ab2d0439e87aa1450fcf8833fdbf76e30316aca43ccde56ce361ab6", kill_on_drop: false }` [INFO] [stdout] 37fed0184ab2d0439e87aa1450fcf8833fdbf76e30316aca43ccde56ce361ab6