[INFO] cloning repository https://github.com/bobjia/remdb [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/bobjia/remdb" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbobjia%2Fremdb", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbobjia%2Fremdb'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] ea3544846d8a9aeaa01aa730fd8dde33ee4fca0d [INFO] checking bobjia/remdb against try#66388cc165a6c4ac98c074dc9f0281ff23528c55 for pr-150727 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbobjia%2Fremdb" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'... [INFO] [stderr] done. [INFO] removed /workspace/builds/worker-7-tc2/source/.cargo/config.toml [INFO] started tweaking git repo https://github.com/bobjia/remdb [INFO] finished tweaking git repo https://github.com/bobjia/remdb [INFO] tweaked toml for git repo https://github.com/bobjia/remdb written to /workspace/builds/worker-7-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/bobjia/remdb on toolchain 66388cc165a6c4ac98c074dc9f0281ff23528c55 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+66388cc165a6c4ac98c074dc9f0281ff23528c55" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/bobjia/remdb 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" "+66388cc165a6c4ac98c074dc9f0281ff23528c55" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+66388cc165a6c4ac98c074dc9f0281ff23528c55" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] e9a7e1cbaa58d0aeb14eb29967bcc7e8463ca5d458c3846a7920f97f8f2d15d0 [INFO] running `Command { std: "docker" "start" "-a" "e9a7e1cbaa58d0aeb14eb29967bcc7e8463ca5d458c3846a7920f97f8f2d15d0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "e9a7e1cbaa58d0aeb14eb29967bcc7e8463ca5d458c3846a7920f97f8f2d15d0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e9a7e1cbaa58d0aeb14eb29967bcc7e8463ca5d458c3846a7920f97f8f2d15d0", kill_on_drop: false }` [INFO] [stdout] e9a7e1cbaa58d0aeb14eb29967bcc7e8463ca5d458c3846a7920f97f8f2d15d0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+66388cc165a6c4ac98c074dc9f0281ff23528c55" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 5935b8af2b711211c37e1c4c18b25a693011b3b0666a9f09687c2859374d99b9 [INFO] running `Command { std: "docker" "start" "-a" "5935b8af2b711211c37e1c4c18b25a693011b3b0666a9f09687c2859374d99b9", kill_on_drop: false }` [INFO] [stderr] Compiling zerocopy v0.8.31 [INFO] [stderr] Compiling serde_json v1.0.147 [INFO] [stderr] Checking cfg-if v1.0.4 [INFO] [stderr] Checking memchr v2.7.6 [INFO] [stderr] Checking futures-sink v0.3.31 [INFO] [stderr] Checking futures-core v0.3.31 [INFO] [stderr] Checking either v1.15.0 [INFO] [stderr] Compiling libc v0.2.178 [INFO] [stderr] Compiling crossbeam-utils v0.8.21 [INFO] [stderr] Compiling serde_core v1.0.228 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling rayon-core v1.13.0 [INFO] [stderr] Compiling parking_lot_core v0.9.12 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling zerocopy-derive v0.8.31 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling remdb-macros v0.1.24 (/opt/rustwide/workdir/remdb-macros) [INFO] [stderr] Compiling serial_test_derive v3.2.0 [INFO] [stderr] Checking futures-io v0.3.31 [INFO] [stderr] Checking slab v0.4.11 [INFO] [stderr] Checking pin-utils v0.1.0 [INFO] [stderr] Checking pin-project-lite v0.2.16 [INFO] [stderr] Checking futures-channel v0.3.31 [INFO] [stderr] Checking futures-task v0.3.31 [INFO] [stderr] Checking regex-syntax v0.8.8 [INFO] [stderr] Checking anstyle v1.0.13 [INFO] [stderr] Checking zmij v0.1.7 [INFO] [stderr] Checking plotters-backend v0.3.7 [INFO] [stderr] Checking ciborium-io v0.2.2 [INFO] [stderr] Checking itoa v1.0.16 [INFO] [stderr] Checking scopeguard v1.2.0 [INFO] [stderr] Checking clap_lex v0.7.6 [INFO] [stderr] Checking smallvec v1.15.1 [INFO] [stderr] Checking plotters-svg v0.3.7 [INFO] [stderr] Checking lock_api v0.4.14 [INFO] [stderr] Checking crossbeam-epoch v0.9.18 [INFO] [stderr] Checking clap_builder v4.5.53 [INFO] [stderr] Checking itertools v0.10.5 [INFO] [stderr] Checking cast v0.3.0 [INFO] [stderr] Checking futures-util v0.3.31 [INFO] [stderr] Checking crossbeam-deque v0.8.6 [INFO] [stderr] Checking once_cell v1.21.3 [INFO] [stderr] Checking same-file v1.0.6 [INFO] [stderr] Checking sdd v3.0.10 [INFO] [stderr] Checking getrandom v0.2.16 [INFO] [stderr] Checking walkdir v2.5.0 [INFO] [stderr] Checking regex-automata v0.4.13 [INFO] [stderr] Checking log v0.4.29 [INFO] [stderr] Checking oorandom v11.1.5 [INFO] [stderr] Checking is-terminal v0.4.17 [INFO] [stderr] Checking scc v2.4.0 [INFO] [stderr] Checking rayon v1.11.0 [INFO] [stderr] Checking rand_core v0.6.4 [INFO] [stderr] Checking plotters v0.3.7 [INFO] [stderr] Checking anes v0.1.6 [INFO] [stderr] Checking parking_lot v0.12.5 [INFO] [stderr] Checking criterion-plot v0.5.0 [INFO] [stderr] Checking regex v1.12.2 [INFO] [stderr] Checking clap v4.5.53 [INFO] [stderr] Checking syn v2.0.111 [INFO] [stderr] Checking half v2.7.1 [INFO] [stderr] Checking ppv-lite86 v0.2.21 [INFO] [stderr] Checking ciborium-ll v0.2.2 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Checking futures-executor v0.3.31 [INFO] [stderr] Checking futures v0.3.31 [INFO] [stderr] Checking serial_test v3.2.0 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Checking remdb v0.1.24 (/opt/rustwide/workdir) [INFO] [stderr] Checking ciborium v0.2.2 [INFO] [stderr] Checking tinytemplate v1.2.1 [INFO] [stdout] warning: unused import: `DataType as CrateDataType` [INFO] [stdout] --> src/table.rs:2:97 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::{types::{RecordHeader, RecordStatus, TableDef, Value, Result, RemDbError, DataType}, DataType as CrateDataType}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `core::time::Duration` [INFO] [stdout] --> src/platform/posix.rs:13:13 [INFO] [stdout] | [INFO] [stdout] 13 | use core::time::Duration; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `core::time::Duration` [INFO] [stdout] --> src/platform/posix.rs:24:13 [INFO] [stdout] | [INFO] [stdout] 24 | use core::time::Duration; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Ipv6Addr` [INFO] [stdout] --> src/pubsub/udp.rs:75:69 [INFO] [stdout] | [INFO] [stdout] 75 | use std::net::{UdpSocket as StdUdpSocket, SocketAddr, Ipv4Addr, Ipv6Addr}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::PubSubError` [INFO] [stdout] --> src/pubsub/publisher.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use super::PubSubError; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `FrameType` [INFO] [stdout] --> src/pubsub/publisher.rs:5:38 [INFO] [stdout] | [INFO] [stdout] 5 | use super::protocol::{ProtocolFrame, FrameType}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `alloc::vec::Vec` [INFO] [stdout] --> src/pubsub/mod.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use alloc::vec::Vec; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `HAError` [INFO] [stdout] --> src/ha/manager.rs:4:25 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::ha::{Result, HAError}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `PubSubError` [INFO] [stdout] --> src/ha/replication.rs:7:44 [INFO] [stdout] | [INFO] [stdout] 7 | use crate::pubsub::{PubSubConfig, UdpMode, PubSubError}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `PubSubError` [INFO] [stdout] --> src/ha/heartbeat.rs:5:44 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::pubsub::{PubSubConfig, UdpMode, PubSubError}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `HAError` [INFO] [stdout] --> src/ha/role.rs:4:25 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::ha::{Result, HAError}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `PubSubError` [INFO] [stdout] --> src/ha/role.rs:6:44 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::pubsub::{PubSubConfig, UdpMode, PubSubError}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `alloc::vec::Vec` [INFO] [stdout] --> src/ha/mod.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use alloc::vec::Vec; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `sync::Mutex` [INFO] [stdout] --> src/time_series/index.rs:4:47 [INFO] [stdout] | [INFO] [stdout] 4 | use std::{sync::RwLock, collections::HashMap, sync::Mutex}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `DataType as CrateDataType` [INFO] [stdout] --> src/table.rs:2:97 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::{types::{RecordHeader, RecordStatus, TableDef, Value, Result, RemDbError, DataType}, DataType as CrateDataType}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `core::time::Duration` [INFO] [stdout] --> src/platform/posix.rs:13:13 [INFO] [stdout] | [INFO] [stdout] 13 | use core::time::Duration; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `core::time::Duration` [INFO] [stdout] --> src/platform/posix.rs:24:13 [INFO] [stdout] | [INFO] [stdout] 24 | use core::time::Duration; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Ipv6Addr` [INFO] [stdout] --> src/pubsub/udp.rs:75:69 [INFO] [stdout] | [INFO] [stdout] 75 | use std::net::{UdpSocket as StdUdpSocket, SocketAddr, Ipv4Addr, Ipv6Addr}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::PubSubError` [INFO] [stdout] --> src/pubsub/publisher.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use super::PubSubError; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `FrameType` [INFO] [stdout] --> src/pubsub/publisher.rs:5:38 [INFO] [stdout] | [INFO] [stdout] 5 | use super::protocol::{ProtocolFrame, FrameType}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `alloc::vec::Vec` [INFO] [stdout] --> src/pubsub/mod.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use alloc::vec::Vec; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `HAError` [INFO] [stdout] --> src/ha/manager.rs:4:25 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::ha::{Result, HAError}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `PubSubError` [INFO] [stdout] --> src/ha/replication.rs:7:44 [INFO] [stdout] | [INFO] [stdout] 7 | use crate::pubsub::{PubSubConfig, UdpMode, PubSubError}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `PubSubError` [INFO] [stdout] --> src/ha/heartbeat.rs:5:44 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::pubsub::{PubSubConfig, UdpMode, PubSubError}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `HAError` [INFO] [stdout] --> src/ha/role.rs:4:25 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::ha::{Result, HAError}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `PubSubError` [INFO] [stdout] --> src/ha/role.rs:6:44 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::pubsub::{PubSubConfig, UdpMode, PubSubError}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `alloc::vec::Vec` [INFO] [stdout] --> src/ha/mod.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use alloc::vec::Vec; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `sync::Mutex` [INFO] [stdout] --> src/time_series/index.rs:4:47 [INFO] [stdout] | [INFO] [stdout] 4 | use std::{sync::RwLock, collections::HashMap, sync::Mutex}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `size` [INFO] [stdout] --> src/types.rs:68:31 [INFO] [stdout] | [INFO] [stdout] 68 | pub fn to_sql_type(&self, size: usize) -> &'static str { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_size` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `size` [INFO] [stdout] --> src/types.rs:68:31 [INFO] [stdout] | [INFO] [stdout] 68 | pub fn to_sql_type(&self, size: usize) -> &'static str { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_size` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `timestamp` [INFO] [stdout] --> src/types.rs:264:23 [INFO] [stdout] | [INFO] [stdout] 264 | pub fn to_iso8601(timestamp: &super::db_timestamp) -> alloc::string::String { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_timestamp` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `format` [INFO] [stdout] --> src/types.rs:271:53 [INFO] [stdout] | [INFO] [stdout] 271 | pub fn to_char(timestamp: &super::db_timestamp, format: &str) -> alloc::string::String { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_format` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `timestamp` [INFO] [stdout] --> src/types.rs:264:23 [INFO] [stdout] | [INFO] [stdout] 264 | pub fn to_iso8601(timestamp: &super::db_timestamp) -> alloc::string::String { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_timestamp` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `format` [INFO] [stdout] --> src/types.rs:271:53 [INFO] [stdout] | [INFO] [stdout] 271 | pub fn to_char(timestamp: &super::db_timestamp, format: &str) -> alloc::string::String { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_format` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/table.rs:40:9 [INFO] [stdout] | [INFO] [stdout] 40 | unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/table.rs:40:9 [INFO] [stdout] | [INFO] [stdout] 40 | unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `slot_id` is never read [INFO] [stdout] --> src/table.rs:445:27 [INFO] [stdout] | [INFO] [stdout] 445 | let mut slot_id = 0; [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `last` [INFO] [stdout] --> src/table.rs:1740:44 [INFO] [stdout] | [INFO] [stdout] 1740 | for (window_start, (sum, min, max, last, count)) in window_aggregates { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_last` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `slot_id` is never read [INFO] [stdout] --> src/table.rs:445:27 [INFO] [stdout] | [INFO] [stdout] 445 | let mut slot_id = 0; [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/index.rs:985:17 [INFO] [stdout] | [INFO] [stdout] 985 | let mut node_mut = &mut *node_ptr; [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/index.rs:1035:13 [INFO] [stdout] | [INFO] [stdout] 1035 | let mut node_mut = &mut *node_ptr.as_ptr(); [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/index.rs:1223:17 [INFO] [stdout] | [INFO] [stdout] 1223 | let mut root = self.root.expect("Root node unexpectedly None"); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `key` [INFO] [stdout] --> src/index.rs:1544:37 [INFO] [stdout] | [INFO] [stdout] 1544 | pub unsafe fn delete(&mut self, key: *const u8, key_size: usize) -> Result<()> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_key` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `key_size` [INFO] [stdout] --> src/index.rs:1544:53 [INFO] [stdout] | [INFO] [stdout] 1544 | pub unsafe fn delete(&mut self, key: *const u8, key_size: usize) -> Result<()> { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_key_size` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/index.rs:1584:17 [INFO] [stdout] | [INFO] [stdout] 1584 | let mut node_mut = &mut *node_ptr; [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/index.rs:1632:13 [INFO] [stdout] | [INFO] [stdout] 1632 | let mut node_mut = &mut *node_ptr.as_ptr(); [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `key` [INFO] [stdout] --> src/index.rs:2207:37 [INFO] [stdout] | [INFO] [stdout] 2207 | pub unsafe fn delete(&mut self, key: *const u8, key_size: usize) -> Result<()> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_key` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `key_size` [INFO] [stdout] --> src/index.rs:2207:53 [INFO] [stdout] | [INFO] [stdout] 2207 | pub unsafe fn delete(&mut self, key: *const u8, key_size: usize) -> Result<()> { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_key_size` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/transaction.rs:778:9 [INFO] [stdout] | [INFO] [stdout] 778 | unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `last` [INFO] [stdout] --> src/table.rs:1740:44 [INFO] [stdout] | [INFO] [stdout] 1740 | for (window_start, (sum, min, max, last, count)) in window_aggregates { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_last` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/index.rs:985:17 [INFO] [stdout] | [INFO] [stdout] 985 | let mut node_mut = &mut *node_ptr; [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/index.rs:1035:13 [INFO] [stdout] | [INFO] [stdout] 1035 | let mut node_mut = &mut *node_ptr.as_ptr(); [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/index.rs:1223:17 [INFO] [stdout] | [INFO] [stdout] 1223 | let mut root = self.root.expect("Root node unexpectedly None"); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `key` [INFO] [stdout] --> src/index.rs:1544:37 [INFO] [stdout] | [INFO] [stdout] 1544 | pub unsafe fn delete(&mut self, key: *const u8, key_size: usize) -> Result<()> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_key` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `key_size` [INFO] [stdout] --> src/index.rs:1544:53 [INFO] [stdout] | [INFO] [stdout] 1544 | pub unsafe fn delete(&mut self, key: *const u8, key_size: usize) -> Result<()> { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_key_size` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/index.rs:1584:17 [INFO] [stdout] | [INFO] [stdout] 1584 | let mut node_mut = &mut *node_ptr; [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/index.rs:1632:13 [INFO] [stdout] | [INFO] [stdout] 1632 | let mut node_mut = &mut *node_ptr.as_ptr(); [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/sql/query_parser.rs:878:40 [INFO] [stdout] | [INFO] [stdout] 878 | Expression::Field { alias: mut expr_alias, name, .. } => { [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/sql/query_parser.rs:884:47 [INFO] [stdout] | [INFO] [stdout] 884 | Expression::FunctionCall { alias: mut expr_alias, name, args, .. } => { [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/sql/query_parser.rs:891:43 [INFO] [stdout] | [INFO] [stdout] 891 | Expression::Constant { alias: mut expr_alias, value, .. } => { [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `saved_pos` [INFO] [stdout] --> src/sql/query_parser.rs:814:17 [INFO] [stdout] | [INFO] [stdout] 814 | let saved_pos = self.position; [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_saved_pos` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `saved_col` [INFO] [stdout] --> src/sql/query_parser.rs:815:17 [INFO] [stdout] | [INFO] [stdout] 815 | let saved_col = self.column; [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_saved_col` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `saved_pos` [INFO] [stdout] --> src/sql/query_parser.rs:1043:13 [INFO] [stdout] | [INFO] [stdout] 1043 | let saved_pos = self.position; [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_saved_pos` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `saved_col` [INFO] [stdout] --> src/sql/query_parser.rs:1044:13 [INFO] [stdout] | [INFO] [stdout] 1044 | let saved_col = self.column; [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_saved_col` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `key` [INFO] [stdout] --> src/index.rs:2207:37 [INFO] [stdout] | [INFO] [stdout] 2207 | pub unsafe fn delete(&mut self, key: *const u8, key_size: usize) -> Result<()> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_key` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `key_size` [INFO] [stdout] --> src/index.rs:2207:53 [INFO] [stdout] | [INFO] [stdout] 2207 | pub unsafe fn delete(&mut self, key: *const u8, key_size: usize) -> Result<()> { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_key_size` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tz_param` [INFO] [stdout] --> src/sql/query_parser.rs:1277:17 [INFO] [stdout] | [INFO] [stdout] 1277 | let tz_param = self.parse_value()?; [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_tz_param` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `time_param` [INFO] [stdout] --> src/sql/query_parser.rs:1288:17 [INFO] [stdout] | [INFO] [stdout] 1288 | let time_param = self.parse_value()?; [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_time_param` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `format_param` [INFO] [stdout] --> src/sql/query_parser.rs:1293:17 [INFO] [stdout] | [INFO] [stdout] 1293 | let format_param = self.parse_value()?; [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_format_param` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `time_param` [INFO] [stdout] --> src/sql/query_parser.rs:1304:17 [INFO] [stdout] | [INFO] [stdout] 1304 | let time_param = self.parse_value()?; [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_time_param` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `time_param` [INFO] [stdout] --> src/sql/query_parser.rs:1315:17 [INFO] [stdout] | [INFO] [stdout] 1315 | let time_param = self.parse_value()?; [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_time_param` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tz_value` [INFO] [stdout] --> src/sql/query_parser.rs:1347:21 [INFO] [stdout] | [INFO] [stdout] 1347 | let tz_value = self.parse_value()?; [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_tz_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/transaction.rs:778:9 [INFO] [stdout] | [INFO] [stdout] 778 | unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/sql/query_executor.rs:165:9 [INFO] [stdout] | [INFO] [stdout] 165 | let mut matched_rows: Vec> = Vec::new(); [INFO] [stdout] | ----^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `expr` [INFO] [stdout] --> src/sql/query_executor.rs:178:13 [INFO] [stdout] | [INFO] [stdout] 178 | for expr in &columns { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/sql/query_executor.rs:283:47 [INFO] [stdout] | [INFO] [stdout] 277 | unsafe { [INFO] [stdout] | ------ because it's nested under this `unsafe` block [INFO] [stdout] ... [INFO] [stdout] 283 | let is_less = unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/sql/query_executor.rs:310:50 [INFO] [stdout] | [INFO] [stdout] 304 | unsafe { [INFO] [stdout] | ------ because it's nested under this `unsafe` block [INFO] [stdout] ... [INFO] [stdout] 310 | let is_greater = unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `record_values` [INFO] [stdout] --> src/sql/query_executor.rs:365:5 [INFO] [stdout] | [INFO] [stdout] 365 | record_values: &[TypedValue], [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_record_values` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `id` [INFO] [stdout] --> src/sql/query_executor.rs:461:45 [INFO] [stdout] | [INFO] [stdout] 461 | let iterate_result = table.iterate(|id, record_ptr| { [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `args` [INFO] [stdout] --> src/sql/query_executor.rs:823:18 [INFO] [stdout] | [INFO] [stdout] 823 | fn execute_count(args: &[TypedValue]) -> Result { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_args` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `seq_num` [INFO] [stdout] --> src/pubsub/mod.rs:267:13 [INFO] [stdout] | [INFO] [stdout] 267 | let seq_num = frame.seq_num(); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_seq_num` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> src/pubsub/mod.rs:274:20 [INFO] [stdout] | [INFO] [stdout] 274 | if let Err(e) = self.subscribers.handle_data(topic_id, payload) { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `last_log_index` [INFO] [stdout] --> src/ha/replication.rs:140:44 [INFO] [stdout] | [INFO] [stdout] 140 | pub fn request_incremental_sync(&self, last_log_index: u32) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_last_log_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/sql/query_parser.rs:878:40 [INFO] [stdout] | [INFO] [stdout] 878 | Expression::Field { alias: mut expr_alias, name, .. } => { [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/sql/query_parser.rs:884:47 [INFO] [stdout] | [INFO] [stdout] 884 | Expression::FunctionCall { alias: mut expr_alias, name, args, .. } => { [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/sql/query_parser.rs:891:43 [INFO] [stdout] | [INFO] [stdout] 891 | Expression::Constant { alias: mut expr_alias, value, .. } => { [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `saved_pos` [INFO] [stdout] --> src/sql/query_parser.rs:814:17 [INFO] [stdout] | [INFO] [stdout] 814 | let saved_pos = self.position; [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_saved_pos` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `saved_col` [INFO] [stdout] --> src/sql/query_parser.rs:815:17 [INFO] [stdout] | [INFO] [stdout] 815 | let saved_col = self.column; [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_saved_col` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `saved_pos` [INFO] [stdout] --> src/sql/query_parser.rs:1043:13 [INFO] [stdout] | [INFO] [stdout] 1043 | let saved_pos = self.position; [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_saved_pos` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `saved_col` [INFO] [stdout] --> src/sql/query_parser.rs:1044:13 [INFO] [stdout] | [INFO] [stdout] 1044 | let saved_col = self.column; [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_saved_col` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `table` [INFO] [stdout] --> src/lib.rs:284:25 [INFO] [stdout] | [INFO] [stdout] 284 | if let Some(table) = table { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_table` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ts_table` [INFO] [stdout] --> src/lib.rs:292:25 [INFO] [stdout] | [INFO] [stdout] 292 | if let Some(ts_table) = ts_table { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ts_table` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tz_param` [INFO] [stdout] --> src/sql/query_parser.rs:1277:17 [INFO] [stdout] | [INFO] [stdout] 1277 | let tz_param = self.parse_value()?; [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_tz_param` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `time_param` [INFO] [stdout] --> src/sql/query_parser.rs:1288:17 [INFO] [stdout] | [INFO] [stdout] 1288 | let time_param = self.parse_value()?; [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_time_param` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `format_param` [INFO] [stdout] --> src/sql/query_parser.rs:1293:17 [INFO] [stdout] | [INFO] [stdout] 1293 | let format_param = self.parse_value()?; [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_format_param` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `time_param` [INFO] [stdout] --> src/sql/query_parser.rs:1304:17 [INFO] [stdout] | [INFO] [stdout] 1304 | let time_param = self.parse_value()?; [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_time_param` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `time_param` [INFO] [stdout] --> src/sql/query_parser.rs:1315:17 [INFO] [stdout] | [INFO] [stdout] 1315 | let time_param = self.parse_value()?; [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_time_param` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tz_value` [INFO] [stdout] --> src/sql/query_parser.rs:1347:21 [INFO] [stdout] | [INFO] [stdout] 1347 | let tz_value = self.parse_value()?; [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_tz_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/sql/query_executor.rs:165:9 [INFO] [stdout] | [INFO] [stdout] 165 | let mut matched_rows: Vec> = Vec::new(); [INFO] [stdout] | ----^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `expr` [INFO] [stdout] --> src/sql/query_executor.rs:178:13 [INFO] [stdout] | [INFO] [stdout] 178 | for expr in &columns { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/sql/query_executor.rs:283:47 [INFO] [stdout] | [INFO] [stdout] 277 | unsafe { [INFO] [stdout] | ------ because it's nested under this `unsafe` block [INFO] [stdout] ... [INFO] [stdout] 283 | let is_less = unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/sql/query_executor.rs:310:50 [INFO] [stdout] | [INFO] [stdout] 304 | unsafe { [INFO] [stdout] | ------ because it's nested under this `unsafe` block [INFO] [stdout] ... [INFO] [stdout] 310 | let is_greater = unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/lib.rs:1164:29 [INFO] [stdout] | [INFO] [stdout] 1164 | let has_active_tx = unsafe { crate::transaction::has_active_tx() }; [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `record_values` [INFO] [stdout] --> src/sql/query_executor.rs:365:5 [INFO] [stdout] | [INFO] [stdout] 365 | record_values: &[TypedValue], [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_record_values` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `id` [INFO] [stdout] --> src/sql/query_executor.rs:461:45 [INFO] [stdout] | [INFO] [stdout] 461 | let iterate_result = table.iterate(|id, record_ptr| { [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `args` [INFO] [stdout] --> src/sql/query_executor.rs:823:18 [INFO] [stdout] | [INFO] [stdout] 823 | fn execute_count(args: &[TypedValue]) -> Result { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_args` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_field_by_offset` is never used [INFO] [stdout] --> src/table.rs:395:15 [INFO] [stdout] | [INFO] [stdout] 51 | impl MemoryTable { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 395 | unsafe fn get_field_by_offset(&self, record_data: *const u8, offset: usize, data_type: DataType, size: usize) -> Result [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `def` and `items` are never read [INFO] [stdout] --> src/index.rs:125:5 [INFO] [stdout] | [INFO] [stdout] 123 | pub struct PrimaryIndex { [INFO] [stdout] | ------------ fields in this struct [INFO] [stdout] 124 | /// 表定义 [INFO] [stdout] 125 | def: alloc::sync::Arc, [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 131 | items: NonNull, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `def` is never read [INFO] [stdout] --> src/index.rs:506:5 [INFO] [stdout] | [INFO] [stdout] 504 | pub struct SecondaryIndex { [INFO] [stdout] | -------------- field in this struct [INFO] [stdout] 505 | /// 表定义 [INFO] [stdout] 506 | def: alloc::sync::Arc, [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `free_node` is never used [INFO] [stdout] --> src/index.rs:1067:15 [INFO] [stdout] | [INFO] [stdout] 971 | impl BTreeIndex { [INFO] [stdout] | --------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 1067 | unsafe fn free_node(&mut self, node_ptr: NonNull) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `free_node` is never used [INFO] [stdout] --> src/index.rs:1663:15 [INFO] [stdout] | [INFO] [stdout] 1570 | impl TTreeIndex { [INFO] [stdout] | --------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 1663 | unsafe fn free_node(&mut self, node_ptr: NonNull) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `log_file_size_limit` and `log_segment_size` are never read [INFO] [stdout] --> src/transaction.rs:168:5 [INFO] [stdout] | [INFO] [stdout] 144 | pub struct LogManager { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 168 | log_file_size_limit: usize, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 169 | /// 日志分段大小 [INFO] [stdout] 170 | log_segment_size: usize, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_eof` is never used [INFO] [stdout] --> src/sql/query_parser.rs:1513:8 [INFO] [stdout] | [INFO] [stdout] 295 | impl SqlParser { [INFO] [stdout] | -------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 1513 | fn is_eof(&self) -> bool { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `process_at_time_zone` is never used [INFO] [stdout] --> src/sql/query_executor.rs:2546:4 [INFO] [stdout] | [INFO] [stdout] 2546 | fn process_at_time_zone(timestamp: &crate::types::db_timestamp, timezone_spec: &str) -> Result src/sql/query_executor.rs:2570:4 [INFO] [stdout] | [INFO] [stdout] 2570 | fn process_timezone_function(timezone_spec: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `string_to_columns` is never used [INFO] [stdout] --> src/sql/result_set.rs:199:8 [INFO] [stdout] | [INFO] [stdout] 199 | pub fn string_to_columns(s: &str) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `values_to_string` is never used [INFO] [stdout] --> src/sql/result_set.rs:235:8 [INFO] [stdout] | [INFO] [stdout] 235 | pub fn values_to_string(values: &[TypedValue]) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `config` is never read [INFO] [stdout] --> src/pubsub/mod.rs:121:5 [INFO] [stdout] | [INFO] [stdout] 120 | pub struct PubSub { [INFO] [stdout] | ------ field in this struct [INFO] [stdout] 121 | config: PubSubConfig, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `receive_loop`, `handle_received_data`, `handle_data_frame`, `handle_nack_frame`, and `handle_heartbeat_frame` are never used [INFO] [stdout] --> src/pubsub/mod.rs:186:8 [INFO] [stdout] | [INFO] [stdout] 128 | impl PubSub { [INFO] [stdout] | ----------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 186 | fn receive_loop(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 228 | fn handle_received_data(&mut self, data: &[u8]) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 264 | fn handle_data_frame(&mut self, frame: protocol::ProtocolFrame) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 280 | fn handle_nack_frame(&mut self, frame: protocol::ProtocolFrame) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 303 | fn handle_heartbeat_frame(&mut self, _frame: protocol::ProtocolFrame) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `buffer_size` is never read [INFO] [stdout] --> src/pubsub/udp.rs:85:9 [INFO] [stdout] | [INFO] [stdout] 79 | pub struct PosixUdpSocket { [INFO] [stdout] | -------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 85 | buffer_size: usize, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `topic_id` is never read [INFO] [stdout] --> src/pubsub/subscriber.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 13 | struct Subscriber { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 17 | topic_id: u16, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `is_initialized` is never read [INFO] [stdout] --> src/ha/manager.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 11 | pub struct HAManager { [INFO] [stdout] | --------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 21 | is_initialized: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SYNC_REQUEST_TOPIC` is never used [INFO] [stdout] --> src/ha/replication.rs:12:7 [INFO] [stdout] | [INFO] [stdout] 12 | const SYNC_REQUEST_TOPIC: u16 = 2; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `confirmed_slaves`, `lock`, and `is_initialized` are never read [INFO] [stdout] --> src/ha/replication.rs:19:5 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct ReplicationManager { [INFO] [stdout] | ------------------ fields in this struct [INFO] [stdout] ... [INFO] [stdout] 19 | confirmed_slaves: usize, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 20 | /// 自旋锁 [INFO] [stdout] 21 | lock: u32, [INFO] [stdout] | ^^^^ [INFO] [stdout] 22 | /// 是否初始化 [INFO] [stdout] 23 | is_initialized: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `handle_wal_log` is never used [INFO] [stdout] --> src/ha/replication.rs:91:8 [INFO] [stdout] | [INFO] [stdout] 26 | impl ReplicationManager { [INFO] [stdout] | ----------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 91 | fn handle_wal_log(&self, _data: &[u8]) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HEARTBEAT_TOPIC` is never used [INFO] [stdout] --> src/ha/heartbeat.rs:9:7 [INFO] [stdout] | [INFO] [stdout] 9 | const HEARTBEAT_TOPIC: u16 = 3; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `heartbeat_interval`, `failure_detection_time`, `lock`, and `is_initialized` are never read [INFO] [stdout] --> src/ha/heartbeat.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 12 | pub struct HeartbeatMonitor { [INFO] [stdout] | ---------------- fields in this struct [INFO] [stdout] 13 | /// 心跳间隔(毫秒) [INFO] [stdout] 14 | heartbeat_interval: u64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 15 | /// 故障检测时间(毫秒) [INFO] [stdout] 16 | failure_detection_time: u64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 22 | lock: u32, [INFO] [stdout] | ^^^^ [INFO] [stdout] 23 | /// 是否初始化 [INFO] [stdout] 24 | is_initialized: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `handle_heartbeat` and `send_heartbeat` are never used [INFO] [stdout] --> src/ha/heartbeat.rs:104:8 [INFO] [stdout] | [INFO] [stdout] 27 | impl HeartbeatMonitor { [INFO] [stdout] | --------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 104 | fn handle_heartbeat(&self, _data: &[u8]) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 122 | fn send_heartbeat(&self) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `lock` and `is_initialized` are never read [INFO] [stdout] --> src/ha/role.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct RoleManager { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 17 | lock: u32, [INFO] [stdout] | ^^^^ [INFO] [stdout] 18 | /// 是否初始化 [INFO] [stdout] 19 | is_initialized: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/lib.rs:344:9 [INFO] [stdout] | [INFO] [stdout] 344 | crate::transaction::TX_MANAGER.begin(tx_type, isolation_level, tx_buffer, log_buffer, max_log_items) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/lib.rs:349:9 [INFO] [stdout] | [INFO] [stdout] 349 | crate::transaction::TX_MANAGER.commit() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/lib.rs:354:9 [INFO] [stdout] | [INFO] [stdout] 354 | crate::transaction::TX_MANAGER.rollback(self) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/lib.rs:1714:12 [INFO] [stdout] | [INFO] [stdout] 1714 | Ok(DB_INSTANCE.as_mut().unwrap()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/lib.rs:1721:9 [INFO] [stdout] | [INFO] [stdout] 1721 | DB_INSTANCE.as_mut() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/transaction.rs:1205:5 [INFO] [stdout] | [INFO] [stdout] 1205 | TX_MANAGER.begin(tx_type, isolation_level, tx_buffer, log_buffer, max_log_items) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/transaction.rs:1210:5 [INFO] [stdout] | [INFO] [stdout] 1210 | TX_MANAGER.commit() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/transaction.rs:1215:5 [INFO] [stdout] | [INFO] [stdout] 1215 | TX_MANAGER.rollback(db) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/transaction.rs:1220:14 [INFO] [stdout] | [INFO] [stdout] 1220 | unsafe { TX_MANAGER.get_current_tx() } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/transaction.rs:1225:14 [INFO] [stdout] | [INFO] [stdout] 1225 | unsafe { TX_MANAGER.has_active_tx() } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/transaction.rs:1230:5 [INFO] [stdout] | [INFO] [stdout] 1230 | TX_MANAGER.set_low_power_mode(enabled); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/transaction.rs:1235:5 [INFO] [stdout] | [INFO] [stdout] 1235 | TX_MANAGER.set_log_manager(log_manager); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/pubsub/mod.rs:366:12 [INFO] [stdout] | [INFO] [stdout] 366 | if PUB_SUB_INSTANCE.is_some() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/ha/mod.rs:56:12 [INFO] [stdout] | [INFO] [stdout] 56 | if HA_MANAGER.is_some() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/ha/mod.rs:71:9 [INFO] [stdout] | [INFO] [stdout] 71 | HA_MANAGER.as_mut() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking criterion v0.5.1 [INFO] [stdout] warning: unused variable: `seq_num` [INFO] [stdout] --> src/pubsub/mod.rs:267:13 [INFO] [stdout] | [INFO] [stdout] 267 | let seq_num = frame.seq_num(); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_seq_num` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> src/pubsub/mod.rs:274:20 [INFO] [stdout] | [INFO] [stdout] 274 | if let Err(e) = self.subscribers.handle_data(topic_id, payload) { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `last_log_index` [INFO] [stdout] --> src/ha/replication.rs:140:44 [INFO] [stdout] | [INFO] [stdout] 140 | pub fn request_incremental_sync(&self, last_log_index: u32) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_last_log_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `table` [INFO] [stdout] --> src/lib.rs:284:25 [INFO] [stdout] | [INFO] [stdout] 284 | if let Some(table) = table { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_table` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ts_table` [INFO] [stdout] --> src/lib.rs:292:25 [INFO] [stdout] | [INFO] [stdout] 292 | if let Some(ts_table) = ts_table { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ts_table` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/lib.rs:1164:29 [INFO] [stdout] | [INFO] [stdout] 1164 | let has_active_tx = unsafe { crate::transaction::has_active_tx() }; [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_field_by_offset` is never used [INFO] [stdout] --> src/table.rs:395:15 [INFO] [stdout] | [INFO] [stdout] 51 | impl MemoryTable { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 395 | unsafe fn get_field_by_offset(&self, record_data: *const u8, offset: usize, data_type: DataType, size: usize) -> Result [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `def` and `items` are never read [INFO] [stdout] --> src/index.rs:125:5 [INFO] [stdout] | [INFO] [stdout] 123 | pub struct PrimaryIndex { [INFO] [stdout] | ------------ fields in this struct [INFO] [stdout] 124 | /// 表定义 [INFO] [stdout] 125 | def: alloc::sync::Arc, [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 131 | items: NonNull, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `def` is never read [INFO] [stdout] --> src/index.rs:506:5 [INFO] [stdout] | [INFO] [stdout] 504 | pub struct SecondaryIndex { [INFO] [stdout] | -------------- field in this struct [INFO] [stdout] 505 | /// 表定义 [INFO] [stdout] 506 | def: alloc::sync::Arc, [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `free_node` is never used [INFO] [stdout] --> src/index.rs:1067:15 [INFO] [stdout] | [INFO] [stdout] 971 | impl BTreeIndex { [INFO] [stdout] | --------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 1067 | unsafe fn free_node(&mut self, node_ptr: NonNull) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `free_node` is never used [INFO] [stdout] --> src/index.rs:1663:15 [INFO] [stdout] | [INFO] [stdout] 1570 | impl TTreeIndex { [INFO] [stdout] | --------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 1663 | unsafe fn free_node(&mut self, node_ptr: NonNull) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `log_file_size_limit` and `log_segment_size` are never read [INFO] [stdout] --> src/transaction.rs:168:5 [INFO] [stdout] | [INFO] [stdout] 144 | pub struct LogManager { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 168 | log_file_size_limit: usize, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 169 | /// 日志分段大小 [INFO] [stdout] 170 | log_segment_size: usize, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_eof` is never used [INFO] [stdout] --> src/sql/query_parser.rs:1513:8 [INFO] [stdout] | [INFO] [stdout] 295 | impl SqlParser { [INFO] [stdout] | -------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 1513 | fn is_eof(&self) -> bool { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `process_at_time_zone` is never used [INFO] [stdout] --> src/sql/query_executor.rs:2546:4 [INFO] [stdout] | [INFO] [stdout] 2546 | fn process_at_time_zone(timestamp: &crate::types::db_timestamp, timezone_spec: &str) -> Result src/sql/query_executor.rs:2570:4 [INFO] [stdout] | [INFO] [stdout] 2570 | fn process_timezone_function(timezone_spec: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `string_to_columns` is never used [INFO] [stdout] --> src/sql/result_set.rs:199:8 [INFO] [stdout] | [INFO] [stdout] 199 | pub fn string_to_columns(s: &str) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `values_to_string` is never used [INFO] [stdout] --> src/sql/result_set.rs:235:8 [INFO] [stdout] | [INFO] [stdout] 235 | pub fn values_to_string(values: &[TypedValue]) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `config` is never read [INFO] [stdout] --> src/pubsub/mod.rs:121:5 [INFO] [stdout] | [INFO] [stdout] 120 | pub struct PubSub { [INFO] [stdout] | ------ field in this struct [INFO] [stdout] 121 | config: PubSubConfig, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `receive_loop`, `handle_received_data`, `handle_data_frame`, `handle_nack_frame`, and `handle_heartbeat_frame` are never used [INFO] [stdout] --> src/pubsub/mod.rs:186:8 [INFO] [stdout] | [INFO] [stdout] 128 | impl PubSub { [INFO] [stdout] | ----------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 186 | fn receive_loop(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 228 | fn handle_received_data(&mut self, data: &[u8]) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 264 | fn handle_data_frame(&mut self, frame: protocol::ProtocolFrame) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 280 | fn handle_nack_frame(&mut self, frame: protocol::ProtocolFrame) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 303 | fn handle_heartbeat_frame(&mut self, _frame: protocol::ProtocolFrame) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `buffer_size` is never read [INFO] [stdout] --> src/pubsub/udp.rs:85:9 [INFO] [stdout] | [INFO] [stdout] 79 | pub struct PosixUdpSocket { [INFO] [stdout] | -------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 85 | buffer_size: usize, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `topic_id` is never read [INFO] [stdout] --> src/pubsub/subscriber.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 13 | struct Subscriber { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 17 | topic_id: u16, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `is_initialized` is never read [INFO] [stdout] --> src/ha/manager.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 11 | pub struct HAManager { [INFO] [stdout] | --------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 21 | is_initialized: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SYNC_REQUEST_TOPIC` is never used [INFO] [stdout] --> src/ha/replication.rs:12:7 [INFO] [stdout] | [INFO] [stdout] 12 | const SYNC_REQUEST_TOPIC: u16 = 2; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `confirmed_slaves`, `lock`, and `is_initialized` are never read [INFO] [stdout] --> src/ha/replication.rs:19:5 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct ReplicationManager { [INFO] [stdout] | ------------------ fields in this struct [INFO] [stdout] ... [INFO] [stdout] 19 | confirmed_slaves: usize, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 20 | /// 自旋锁 [INFO] [stdout] 21 | lock: u32, [INFO] [stdout] | ^^^^ [INFO] [stdout] 22 | /// 是否初始化 [INFO] [stdout] 23 | is_initialized: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `handle_wal_log` is never used [INFO] [stdout] --> src/ha/replication.rs:91:8 [INFO] [stdout] | [INFO] [stdout] 26 | impl ReplicationManager { [INFO] [stdout] | ----------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 91 | fn handle_wal_log(&self, _data: &[u8]) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HEARTBEAT_TOPIC` is never used [INFO] [stdout] --> src/ha/heartbeat.rs:9:7 [INFO] [stdout] | [INFO] [stdout] 9 | const HEARTBEAT_TOPIC: u16 = 3; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `heartbeat_interval`, `failure_detection_time`, `lock`, and `is_initialized` are never read [INFO] [stdout] --> src/ha/heartbeat.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 12 | pub struct HeartbeatMonitor { [INFO] [stdout] | ---------------- fields in this struct [INFO] [stdout] 13 | /// 心跳间隔(毫秒) [INFO] [stdout] 14 | heartbeat_interval: u64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 15 | /// 故障检测时间(毫秒) [INFO] [stdout] 16 | failure_detection_time: u64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 22 | lock: u32, [INFO] [stdout] | ^^^^ [INFO] [stdout] 23 | /// 是否初始化 [INFO] [stdout] 24 | is_initialized: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `handle_heartbeat` and `send_heartbeat` are never used [INFO] [stdout] --> src/ha/heartbeat.rs:104:8 [INFO] [stdout] | [INFO] [stdout] 27 | impl HeartbeatMonitor { [INFO] [stdout] | --------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 104 | fn handle_heartbeat(&self, _data: &[u8]) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 122 | fn send_heartbeat(&self) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `lock` and `is_initialized` are never read [INFO] [stdout] --> src/ha/role.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct RoleManager { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 17 | lock: u32, [INFO] [stdout] | ^^^^ [INFO] [stdout] 18 | /// 是否初始化 [INFO] [stdout] 19 | is_initialized: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/lib.rs:344:9 [INFO] [stdout] | [INFO] [stdout] 344 | crate::transaction::TX_MANAGER.begin(tx_type, isolation_level, tx_buffer, log_buffer, max_log_items) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/lib.rs:349:9 [INFO] [stdout] | [INFO] [stdout] 349 | crate::transaction::TX_MANAGER.commit() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/lib.rs:354:9 [INFO] [stdout] | [INFO] [stdout] 354 | crate::transaction::TX_MANAGER.rollback(self) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/lib.rs:1714:12 [INFO] [stdout] | [INFO] [stdout] 1714 | Ok(DB_INSTANCE.as_mut().unwrap()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/lib.rs:1721:9 [INFO] [stdout] | [INFO] [stdout] 1721 | DB_INSTANCE.as_mut() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/transaction.rs:1205:5 [INFO] [stdout] | [INFO] [stdout] 1205 | TX_MANAGER.begin(tx_type, isolation_level, tx_buffer, log_buffer, max_log_items) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/transaction.rs:1210:5 [INFO] [stdout] | [INFO] [stdout] 1210 | TX_MANAGER.commit() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/transaction.rs:1215:5 [INFO] [stdout] | [INFO] [stdout] 1215 | TX_MANAGER.rollback(db) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/transaction.rs:1220:14 [INFO] [stdout] | [INFO] [stdout] 1220 | unsafe { TX_MANAGER.get_current_tx() } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/transaction.rs:1225:14 [INFO] [stdout] | [INFO] [stdout] 1225 | unsafe { TX_MANAGER.has_active_tx() } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/transaction.rs:1230:5 [INFO] [stdout] | [INFO] [stdout] 1230 | TX_MANAGER.set_low_power_mode(enabled); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/transaction.rs:1235:5 [INFO] [stdout] | [INFO] [stdout] 1235 | TX_MANAGER.set_log_manager(log_manager); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/pubsub/mod.rs:366:12 [INFO] [stdout] | [INFO] [stdout] 366 | if PUB_SUB_INSTANCE.is_some() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/ha/mod.rs:56:12 [INFO] [stdout] | [INFO] [stdout] 56 | if HA_MANAGER.is_some() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/ha/mod.rs:71:9 [INFO] [stdout] | [INFO] [stdout] 71 | HA_MANAGER.as_mut() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::sync::Arc` [INFO] [stdout] --> tests/sql_query_test.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use std::sync::Arc; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `remdb::table::*` [INFO] [stdout] --> tests/large_table_test.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use remdb::table::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning: unused imports: `AnySecondaryIndex` and `PrimaryIndex` [INFO] [stdout] --> tests/large_table_test.rs:4:29 [INFO] [stdout] | [INFO] [stdout] 4 | use remdb::{init_global_db, PrimaryIndex, AnySecondaryIndex}; use remdb::config::DefaultMemoryAllocator; [INFO] [stdout] | ^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] thread 'rustc' (996) panicked at /rustc-dev/66388cc165a6c4ac98c074dc9f0281ff23528c55/compiler/rustc_ast/src/attr/mod.rs:302:36: [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> tests/simple_time_type_test.rs:40:13 [INFO] [stdout] | [INFO] [stdout] 40 | DB_MEMORY.as_mut_ptr(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] attribute is missing tokens: Attribute { kind: Normal(NormalAttr { item: AttrItem { unsafety: Default, path: Path { span: tests/time_series_batch_test.rs:122:1: 122:8 (#23), segments: [PathSegment { ident: #23, id: NodeId(4294967040), args: None }], tokens: None }, args: Unparsed(Empty), tokens: None }, tokens: None }), id: AttrId(17), style: Outer, span: tests/time_series_batch_test.rs:122:1: 122:8 (#23) } [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> tests/simple_time_type_test.rs:41:13 [INFO] [stdout] | [INFO] [stdout] 41 | DB_MEMORY.len() [INFO] [stdout] | ^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] stack backtrace: [INFO] [stderr] 0: 0x74c21fe2bfa3 - <::print::DisplayBacktrace as core[75ca2badb63c4514]::fmt::Display>::fmt [INFO] [stderr] 1: 0x74c22040fb48 - core[75ca2badb63c4514]::fmt::write [INFO] [stderr] 2: 0x74c21fe42226 - ::write_fmt [INFO] [stderr] 3: 0x74c21fe01b98 - std[7d609349af90bec6]::panicking::default_hook::{closure#0} [INFO] [stderr] 4: 0x74c21fe1f833 - std[7d609349af90bec6]::panicking::default_hook [INFO] [stderr] 5: 0x74c21ee0236a - std[7d609349af90bec6]::panicking::update_hook::>::{closure#0} [INFO] [stderr] 6: 0x74c21fe1fb12 - std[7d609349af90bec6]::panicking::panic_with_hook [INFO] [stderr] 7: 0x74c21fe01c58 - std[7d609349af90bec6]::panicking::panic_handler::{closure#0} [INFO] [stderr] 8: 0x74c21fdf89a9 - std[7d609349af90bec6]::sys::backtrace::__rust_end_short_backtrace:: [INFO] [stderr] 9: 0x74c21fe0372d - __rustc[69841a6cbc58d81d]::rust_begin_unwind [INFO] [stderr] 10: 0x74c21ca38f9c - core[75ca2badb63c4514]::panicking::panic_fmt [INFO] [stderr] 11: 0x74c2211e0110 - ::token_trees [INFO] [stderr] 12: 0x74c221a1c314 - ::fully_expand_fragment [INFO] [stderr] 13: 0x74c2219e65d2 - ::expand_crate [INFO] [stderr] 14: 0x74c220af0af3 - rustc_interface[903e43df8d6bd657]::passes::configure_and_expand [INFO] [stderr] 15: 0x74c221607658 - rustc_interface[903e43df8d6bd657]::passes::resolver_for_lowering_raw [INFO] [stderr] 16: 0x74c2216073cd - rustc_query_impl[8c5349e00d64015e]::plumbing::__rust_begin_short_backtrace::> [INFO] [stderr] 17: 0x74c2216073a7 - >::call_once [INFO] [stderr] 18: 0x74c2215ecb5f - rustc_query_system[d45be4fb383a0235]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[8c5349e00d64015e]::plumbing::QueryCtxt, false> [INFO] [stderr] 19: 0x74c2215ec6bc - rustc_query_impl[8c5349e00d64015e]::query_impl::resolver_for_lowering_raw::get_query_non_incr::__rust_end_short_backtrace [INFO] [stderr] 20: 0x74c22177127b - , rustc_driver_impl[3f9d6dd912ac34bd]::run_compiler::{closure#0}::{closure#2}>::{closure#2} as core[75ca2badb63c4514]::ops::function::FnOnce<(&rustc_session[1e6875ba352dc1ba]::session::Session, rustc_middle[2342951a64deba5]::ty::context::CurrentGcx, alloc[d7482eb0f1d19161]::sync::Arc, &std[7d609349af90bec6]::sync::once_lock::OnceLock, &rustc_data_structures[c82a87ce5cdbfc92]::sync::worker_local::WorkerLocal, &rustc_data_structures[c82a87ce5cdbfc92]::sync::worker_local::WorkerLocal, rustc_driver_impl[3f9d6dd912ac34bd]::run_compiler::{closure#0}::{closure#2})>>::call_once::{shim:vtable#0} [INFO] [stderr] 21: 0x74c22165ac98 - rustc_interface[903e43df8d6bd657]::interface::run_compiler::<(), rustc_driver_impl[3f9d6dd912ac34bd]::run_compiler::{closure#0}>::{closure#1} [INFO] [stderr] 22: 0x74c2214eac4e - std[7d609349af90bec6]::sys::backtrace::__rust_begin_short_backtrace::::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}, ()> [INFO] [stderr] 23: 0x74c2214eaa20 - ::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}, ()>::{closure#1} as core[75ca2badb63c4514]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} [INFO] [stderr] 24: 0x74c2214ed138 - ::new::thread_start [INFO] [stderr] 25: 0x74c21b08aaa4 - [INFO] [stderr] 26: 0x74c21b117a64 - clone [INFO] [stderr] 27: 0x0 - [INFO] [stderr] [INFO] [stderr] error: the compiler unexpectedly panicked. this is a bug. [INFO] [stderr] [INFO] [stderr] note: we would appreciate a bug report: https://github.com/rust-lang/rust/issues/new?labels=C-bug%2C+I-ICE%2C+T-compiler&template=ice.md [INFO] [stderr] [INFO] [stderr] note: please make sure that you have updated to the latest nightly [INFO] [stderr] [INFO] [stderr] warning: the ICE couldn't be written to `/opt/rustwide/workdir/rustc-ice-2026-01-09T10_27_27-979.txt`: Read-only file system (os error 30) [INFO] [stderr] [INFO] [stderr] note: rustc 1.94.0-nightly (66388cc16 2026-01-08) running on x86_64-unknown-linux-gnu [INFO] [stderr] [INFO] [stderr] note: compiler flags: -C opt-level=1 -C embed-bitcode=no -C debuginfo=2 -C debug-assertions=on [INFO] [stderr] [INFO] [stderr] note: some of the compiler flags provided by cargo are hidden [INFO] [stderr] [INFO] [stderr] query stack during panic: [INFO] [stderr] #0 [resolver_for_lowering_raw] getting the resolver for lowering [INFO] [stderr] end of query stack [INFO] [stderr] error: could not compile `remdb` (test "time_series_batch_test") [INFO] [stderr] [INFO] [stderr] Caused by: [INFO] [stderr] process didn't exit successfully: `/opt/rustwide/rustup-home/toolchains/66388cc165a6c4ac98c074dc9f0281ff23528c55/bin/rustc --crate-name time_series_batch_test --edition=2021 tests/time_series_batch_test.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --emit=dep-info,metadata -C opt-level=1 -C embed-bitcode=no -C debuginfo=2 -C debug-assertions=on --test --cfg 'feature="default"' --cfg 'feature="posix"' --cfg 'feature="rand"' --cfg 'feature="std"' --check-cfg 'cfg(docsrs,test)' --check-cfg 'cfg(feature, values("baremetal", "c-api", "debug", "default", "posix", "rand", "std"))' -C metadata=b0b115df0a092401 -C extra-filename=-ddfa723af1d43f9d --out-dir /opt/rustwide/target/debug/deps -L dependency=/opt/rustwide/target/debug/deps --extern criterion=/opt/rustwide/target/debug/deps/libcriterion-3b927cd18256be22.rmeta --extern rand=/opt/rustwide/target/debug/deps/librand-90033ffd45dc8e2f.rmeta --extern remdb=/opt/rustwide/target/debug/deps/libremdb-a962d06c4689a6ab.rmeta --extern remdb_macros=/opt/rustwide/target/debug/deps/libremdb_macros-965e504c6a539955.so --extern serial_test=/opt/rustwide/target/debug/deps/libserial_test-2bf51442ea4d2b7d.rmeta --cap-lints=forbid` (exit status: 101) [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> tests/sql_query_test.rs:147:14 [INFO] [stdout] | [INFO] [stdout] 147 | let db = unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> tests/sql_query_test.rs:226:25 [INFO] [stdout] | [INFO] [stdout] 226 | let insert_id = unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> tests/sql_query_test.rs:236:17 [INFO] [stdout] | [INFO] [stdout] 236 | let table = unsafe { db.get_table_mut(0).unwrap() }; [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `record_ptr` [INFO] [stdout] --> tests/sql_query_test.rs:247:28 [INFO] [stdout] | [INFO] [stdout] 247 | table.iterate(|id, record_ptr| { [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_record_ptr` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> tests/sql_query_test.rs:368:14 [INFO] [stdout] | [INFO] [stdout] 368 | let db = unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] thread 'rustc' (1003) panicked at /rustc-dev/66388cc165a6c4ac98c074dc9f0281ff23528c55/compiler/rustc_ast/src/attr/mod.rs:302:36: [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> tests/sql_query_test.rs:405:25 [INFO] [stdout] | [INFO] [stdout] 405 | let insert_id = unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] attribute is missing tokens: Attribute { kind: Normal(NormalAttr { item: AttrItem { unsafety: Default, path: Path { span: tests/transaction_test.rs:173:1: 173:8 (#7), segments: [PathSegment { ident: #7, id: NodeId(4294967040), args: None }], tokens: None }, args: Unparsed(Empty), tokens: None }, tokens: None }), id: AttrId(14), style: Outer, span: tests/transaction_test.rs:173:1: 173:8 (#7) } [INFO] [stderr] stack backtrace: [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> tests/sql_query_test.rs:134:13 [INFO] [stdout] | [INFO] [stdout] 134 | DB_MEMORY.as_mut_ptr(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> tests/sql_query_test.rs:135:13 [INFO] [stdout] | [INFO] [stdout] 135 | DB_MEMORY.len() [INFO] [stdout] | ^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> tests/sql_query_test.rs:355:13 [INFO] [stdout] | [INFO] [stdout] 355 | DB_MEMORY.as_mut_ptr(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> tests/sql_query_test.rs:356:13 [INFO] [stdout] | [INFO] [stdout] 356 | DB_MEMORY.len() [INFO] [stdout] | ^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> tests/large_table_test.rs:159:5 [INFO] [stdout] | [INFO] [stdout] 159 | unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 0: 0x7565b3c2bfa3 - <::print::DisplayBacktrace as core[75ca2badb63c4514]::fmt::Display>::fmt [INFO] [stderr] 1: 0x7565b420fb48 - core[75ca2badb63c4514]::fmt::write [INFO] [stderr] 2: 0x7565b3c42226 - ::write_fmt [INFO] [stderr] 3: 0x7565b3c01b98 - std[7d609349af90bec6]::panicking::default_hook::{closure#0} [INFO] [stderr] 4: 0x7565b3c1f833 - std[7d609349af90bec6]::panicking::default_hook [INFO] [stderr] 5: 0x7565b2c0236a - std[7d609349af90bec6]::panicking::update_hook::>::{closure#0} [INFO] [stderr] 6: 0x7565b3c1fb12 - std[7d609349af90bec6]::panicking::panic_with_hook [INFO] [stderr] 7: 0x7565b3c01c58 - std[7d609349af90bec6]::panicking::panic_handler::{closure#0} [INFO] [stderr] 8: 0x7565b3bf89a9 - std[7d609349af90bec6]::sys::backtrace::__rust_end_short_backtrace:: [INFO] [stderr] 9: 0x7565b3c0372d - __rustc[69841a6cbc58d81d]::rust_begin_unwind [INFO] [stderr] 10: 0x7565b0838f9c - core[75ca2badb63c4514]::panicking::panic_fmt [INFO] [stderr] 11: 0x7565b4fe0110 - ::token_trees [INFO] [stderr] 12: 0x7565b581c314 - ::fully_expand_fragment [INFO] [stderr] 13: 0x7565b57e65d2 - ::expand_crate [INFO] [stderr] 14: 0x7565b48f0af3 - rustc_interface[903e43df8d6bd657]::passes::configure_and_expand [INFO] [stderr] 15: 0x7565b5407658 - rustc_interface[903e43df8d6bd657]::passes::resolver_for_lowering_raw [INFO] [stderr] 16: 0x7565b54073cd - rustc_query_impl[8c5349e00d64015e]::plumbing::__rust_begin_short_backtrace::> [INFO] [stderr] 17: 0x7565b54073a7 - >::call_once [INFO] [stderr] 18: 0x7565b53ecb5f - rustc_query_system[d45be4fb383a0235]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[8c5349e00d64015e]::plumbing::QueryCtxt, false> [INFO] [stderr] 19: 0x7565b53ec6bc - rustc_query_impl[8c5349e00d64015e]::query_impl::resolver_for_lowering_raw::get_query_non_incr::__rust_end_short_backtrace [INFO] [stderr] 20: 0x7565b557127b - , rustc_driver_impl[3f9d6dd912ac34bd]::run_compiler::{closure#0}::{closure#2}>::{closure#2} as core[75ca2badb63c4514]::ops::function::FnOnce<(&rustc_session[1e6875ba352dc1ba]::session::Session, rustc_middle[2342951a64deba5]::ty::context::CurrentGcx, alloc[d7482eb0f1d19161]::sync::Arc, &std[7d609349af90bec6]::sync::once_lock::OnceLock, &rustc_data_structures[c82a87ce5cdbfc92]::sync::worker_local::WorkerLocal, &rustc_data_structures[c82a87ce5cdbfc92]::sync::worker_local::WorkerLocal, rustc_driver_impl[3f9d6dd912ac34bd]::run_compiler::{closure#0}::{closure#2})>>::call_once::{shim:vtable#0} [INFO] [stderr] 21: 0x7565b545ac98 - rustc_interface[903e43df8d6bd657]::interface::run_compiler::<(), rustc_driver_impl[3f9d6dd912ac34bd]::run_compiler::{closure#0}>::{closure#1} [INFO] [stderr] 22: 0x7565b52eac4e - std[7d609349af90bec6]::sys::backtrace::__rust_begin_short_backtrace::::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}, ()> [INFO] [stderr] 23: 0x7565b52eaa20 - ::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}, ()>::{closure#1} as core[75ca2badb63c4514]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} [INFO] [stderr] 24: 0x7565b52ed138 - ::new::thread_start [INFO] [stderr] 25: 0x7565aee8aaa4 - [INFO] [stderr] 26: 0x7565aef17a64 - clone [INFO] [stderr] 27: 0x0 - [INFO] [stderr] [INFO] [stderr] error: the compiler unexpectedly panicked. this is a bug. [INFO] [stderr] [INFO] [stderr] note: we would appreciate a bug report: https://github.com/rust-lang/rust/issues/new?labels=C-bug%2C+I-ICE%2C+T-compiler&template=ice.md [INFO] [stderr] [INFO] [stderr] note: please make sure that you have updated to the latest nightly [INFO] [stderr] [INFO] [stderr] warning: the ICE couldn't be written to `/opt/rustwide/workdir/rustc-ice-2026-01-09T10_27_27-994.txt`: Read-only file system (os error 30) [INFO] [stderr] [INFO] [stderr] note: rustc 1.94.0-nightly (66388cc16 2026-01-08) running on x86_64-unknown-linux-gnu [INFO] [stderr] [INFO] [stderr] note: compiler flags: -C opt-level=1 -C embed-bitcode=no -C debuginfo=2 -C debug-assertions=on [INFO] [stderr] [INFO] [stderr] note: some of the compiler flags provided by cargo are hidden [INFO] [stderr] [INFO] [stderr] query stack during panic: [INFO] [stderr] #0 [resolver_for_lowering_raw] getting the resolver for lowering [INFO] [stderr] end of query stack [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> tests/large_table_test.rs:172:13 [INFO] [stdout] | [INFO] [stdout] 172 | &mut DEFAULT_ALLOCATOR [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 172 | &raw mut DEFAULT_ALLOCATOR [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing [INFO] [stdout] --> tests/large_table_test.rs:249:9 [INFO] [stdout] | [INFO] [stdout] 249 | drop(table); // 释放表的可变引用 [INFO] [stdout] | ^^^^^-----^ [INFO] [stdout] | | [INFO] [stdout] | argument has type `&mut MemoryTable` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dropping_references)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the expression or result [INFO] [stdout] | [INFO] [stdout] 249 - drop(table); // 释放表的可变引用 [INFO] [stdout] 249 + let _ = table; // 释放表的可变引用 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing [INFO] [stdout] --> tests/large_table_test.rs:287:9 [INFO] [stdout] | [INFO] [stdout] 287 | drop(table); [INFO] [stdout] | ^^^^^-----^ [INFO] [stdout] | | [INFO] [stdout] | argument has type `&mut MemoryTable` [INFO] [stdout] | [INFO] [stdout] help: use `let _ = ...` to ignore the expression or result [INFO] [stdout] | [INFO] [stdout] 287 - drop(table); [INFO] [stdout] 287 + let _ = table; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing [INFO] [stdout] --> tests/large_table_test.rs:318:9 [INFO] [stdout] | [INFO] [stdout] 318 | drop(table); [INFO] [stdout] | ^^^^^-----^ [INFO] [stdout] | | [INFO] [stdout] | argument has type `&mut MemoryTable` [INFO] [stdout] | [INFO] [stdout] help: use `let _ = ...` to ignore the expression or result [INFO] [stdout] | [INFO] [stdout] 318 - drop(table); [INFO] [stdout] 318 + let _ = table; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing [INFO] [stdout] --> tests/large_table_test.rs:373:9 [INFO] [stdout] | [INFO] [stdout] 373 | drop(table); [INFO] [stdout] | ^^^^^-----^ [INFO] [stdout] | | [INFO] [stdout] | argument has type `&mut MemoryTable` [INFO] [stdout] | [INFO] [stdout] help: use `let _ = ...` to ignore the expression or result [INFO] [stdout] | [INFO] [stdout] 373 - drop(table); [INFO] [stdout] 373 + let _ = table; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing [INFO] [stdout] --> tests/large_table_test.rs:403:9 [INFO] [stdout] | [INFO] [stdout] 403 | drop(table); [INFO] [stdout] | ^^^^^-----^ [INFO] [stdout] | | [INFO] [stdout] | argument has type `&mut MemoryTable` [INFO] [stdout] | [INFO] [stdout] help: use `let _ = ...` to ignore the expression or result [INFO] [stdout] | [INFO] [stdout] 403 - drop(table); [INFO] [stdout] 403 + let _ = table; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `remdb::types::Result` [INFO] [stdout] --> tests/memory_test.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use remdb::types::Result; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fs::File` [INFO] [stdout] --> tests/test_snapshot_gen.rs:138:13 [INFO] [stdout] | [INFO] [stdout] 138 | use std::fs::File; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `remdb` (test "transaction_test") [INFO] [stderr] [INFO] [stderr] Caused by: [INFO] [stderr] process didn't exit successfully: `/opt/rustwide/rustup-home/toolchains/66388cc165a6c4ac98c074dc9f0281ff23528c55/bin/rustc --crate-name transaction_test --edition=2021 tests/transaction_test.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --emit=dep-info,metadata -C opt-level=1 -C embed-bitcode=no -C debuginfo=2 -C debug-assertions=on --test --cfg 'feature="default"' --cfg 'feature="posix"' --cfg 'feature="rand"' --cfg 'feature="std"' --check-cfg 'cfg(docsrs,test)' --check-cfg 'cfg(feature, values("baremetal", "c-api", "debug", "default", "posix", "rand", "std"))' -C metadata=0553615c4ee5d25d -C extra-filename=-47ef58e385743525 --out-dir /opt/rustwide/target/debug/deps -L dependency=/opt/rustwide/target/debug/deps --extern criterion=/opt/rustwide/target/debug/deps/libcriterion-3b927cd18256be22.rmeta --extern rand=/opt/rustwide/target/debug/deps/librand-90033ffd45dc8e2f.rmeta --extern remdb=/opt/rustwide/target/debug/deps/libremdb-a962d06c4689a6ab.rmeta --extern remdb_macros=/opt/rustwide/target/debug/deps/libremdb_macros-965e504c6a539955.so --extern serial_test=/opt/rustwide/target/debug/deps/libserial_test-2bf51442ea4d2b7d.rmeta --cap-lints=forbid` (exit status: 101) [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> tests/memory_test.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ptr3` [INFO] [stdout] --> tests/memory_test.rs:25:13 [INFO] [stdout] | [INFO] [stdout] 25 | let ptr3 = allocator.allocate(64).unwrap(); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_ptr3` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pool_sizes` [INFO] [stdout] --> tests/memory_test.rs:81:9 [INFO] [stdout] | [INFO] [stdout] 81 | let pool_sizes = [16, 32, 64, 128]; [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pool_sizes` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pool_counts` [INFO] [stdout] --> tests/memory_test.rs:82:9 [INFO] [stdout] | [INFO] [stdout] 82 | let pool_counts = [16, 8, 4, 2]; [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pool_counts` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> tests/memory_test.rs:133:5 [INFO] [stdout] | [INFO] [stdout] 133 | unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ptr2` [INFO] [stdout] --> tests/memory_test.rs:145:13 [INFO] [stdout] | [INFO] [stdout] 145 | let ptr2 = allocator.allocate(100).unwrap(); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_ptr2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `id` [INFO] [stdout] --> tests/table_test.rs:363:17 [INFO] [stdout] | [INFO] [stdout] 363 | let id = core::ptr::read(data_ptr as *const u32); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_id` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> tests/test_snapshot_gen.rs:286:13 [INFO] [stdout] | [INFO] [stdout] 286 | let mut db = remdb::init_global_db(&TEST_DB_CONFIG)?; [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `TABLE_FREE_SLOTS_BUFFER` is never used [INFO] [stdout] --> tests/test_snapshot_gen.rs:74:12 [INFO] [stdout] | [INFO] [stdout] 74 | static mut TABLE_FREE_SLOTS_BUFFER: [usize; 100] = [0usize; 100]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> tests/test_snapshot_gen.rs:50:9 [INFO] [stdout] | [INFO] [stdout] 50 | &mut DEFAULT_ALLOCATOR [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default [INFO] [stdout] help: use `&raw mut` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 50 | &raw mut DEFAULT_ALLOCATOR [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> tests/test_snapshot_gen.rs:266:9 [INFO] [stdout] | [INFO] [stdout] 266 | transaction::TX_MANAGER.reset(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> tests/test_snapshot_gen.rs:272:9 [INFO] [stdout] | [INFO] [stdout] 272 | TABLE_DATA_BUFFER.fill(0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> tests/wal_test.rs:123:5 [INFO] [stdout] | [INFO] [stdout] 123 | unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> tests/wal_test.rs:165:5 [INFO] [stdout] | [INFO] [stdout] 165 | unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] thread 'rustc' (1005) panicked at /rustc-dev/66388cc165a6c4ac98c074dc9f0281ff23528c55/compiler/rustc_ast/src/attr/mod.rs:302:36: [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> tests/wal_test.rs:225:5 [INFO] [stdout] | [INFO] [stdout] 225 | unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] attribute is missing tokens: Attribute { kind: Normal(NormalAttr { item: AttrItem { unsafety: Default, path: Path { span: tests/time_series_module_test.rs:186:1: 186:8 (#94), segments: [PathSegment { ident: #94, id: NodeId(4294967040), args: None }], tokens: None }, args: Unparsed(Empty), tokens: None }, tokens: None }), id: AttrId(47), style: Outer, span: tests/time_series_module_test.rs:186:1: 186:8 (#94) } [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> tests/wal_test.rs:292:5 [INFO] [stdout] | [INFO] [stdout] 292 | unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] stack backtrace: [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> tests/wal_test.rs:360:5 [INFO] [stdout] | [INFO] [stdout] 360 | unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> tests/wal_test.rs:404:5 [INFO] [stdout] | [INFO] [stdout] 404 | unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `DataType as CrateDataType` [INFO] [stdout] --> src/table.rs:2:97 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::{types::{RecordHeader, RecordStatus, TableDef, Value, Result, RemDbError, DataType}, DataType as CrateDataType}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `core::time::Duration` [INFO] [stdout] --> src/platform/posix.rs:13:13 [INFO] [stdout] | [INFO] [stdout] 13 | use core::time::Duration; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `core::time::Duration` [INFO] [stdout] --> src/platform/posix.rs:24:13 [INFO] [stdout] | [INFO] [stdout] 24 | use core::time::Duration; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Ipv6Addr` [INFO] [stdout] --> src/pubsub/udp.rs:75:69 [INFO] [stdout] | [INFO] [stdout] 75 | use std::net::{UdpSocket as StdUdpSocket, SocketAddr, Ipv4Addr, Ipv6Addr}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::PubSubError` [INFO] [stdout] --> src/pubsub/publisher.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use super::PubSubError; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `alloc::vec::Vec` [INFO] [stdout] --> src/pubsub/mod.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use alloc::vec::Vec; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `HAError` [INFO] [stdout] --> src/ha/manager.rs:4:25 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::ha::{Result, HAError}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `PubSubError` [INFO] [stdout] --> src/ha/replication.rs:7:44 [INFO] [stdout] | [INFO] [stdout] 7 | use crate::pubsub::{PubSubConfig, UdpMode, PubSubError}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `PubSubError` [INFO] [stdout] --> src/ha/heartbeat.rs:5:44 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::pubsub::{PubSubConfig, UdpMode, PubSubError}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `HAError` [INFO] [stdout] --> src/ha/role.rs:4:25 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::ha::{Result, HAError}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `PubSubError` [INFO] [stdout] --> src/ha/role.rs:6:44 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::pubsub::{PubSubConfig, UdpMode, PubSubError}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `alloc::vec::Vec` [INFO] [stdout] --> src/ha/mod.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use alloc::vec::Vec; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `sync::Mutex` [INFO] [stdout] --> src/time_series/index.rs:4:47 [INFO] [stdout] | [INFO] [stdout] 4 | use std::{sync::RwLock, collections::HashMap, sync::Mutex}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 0: 0x7e9cb902bfa3 - <::print::DisplayBacktrace as core[75ca2badb63c4514]::fmt::Display>::fmt [INFO] [stderr] 1: 0x7e9cb960fb48 - core[75ca2badb63c4514]::fmt::write [INFO] [stderr] 2: 0x7e9cb9042226 - ::write_fmt [INFO] [stderr] 3: 0x7e9cb9001b98 - std[7d609349af90bec6]::panicking::default_hook::{closure#0} [INFO] [stderr] 4: 0x7e9cb901f833 - std[7d609349af90bec6]::panicking::default_hook [INFO] [stderr] 5: 0x7e9cb800236a - std[7d609349af90bec6]::panicking::update_hook::>::{closure#0} [INFO] [stderr] 6: 0x7e9cb901fb12 - std[7d609349af90bec6]::panicking::panic_with_hook [INFO] [stderr] 7: 0x7e9cb9001c58 - std[7d609349af90bec6]::panicking::panic_handler::{closure#0} [INFO] [stderr] 8: 0x7e9cb8ff89a9 - std[7d609349af90bec6]::sys::backtrace::__rust_end_short_backtrace:: [INFO] [stderr] 9: 0x7e9cb900372d - __rustc[69841a6cbc58d81d]::rust_begin_unwind [INFO] [stderr] 10: 0x7e9cb5c38f9c - core[75ca2badb63c4514]::panicking::panic_fmt [INFO] [stderr] 11: 0x7e9cba3e0110 - ::token_trees [INFO] [stderr] 12: 0x7e9cbac1c314 - ::fully_expand_fragment [INFO] [stderr] 13: 0x7e9cbabe65d2 - ::expand_crate [INFO] [stderr] 14: 0x7e9cb9cf0af3 - rustc_interface[903e43df8d6bd657]::passes::configure_and_expand [INFO] [stderr] 15: 0x7e9cba807658 - rustc_interface[903e43df8d6bd657]::passes::resolver_for_lowering_raw [INFO] [stderr] 16: 0x7e9cba8073cd - rustc_query_impl[8c5349e00d64015e]::plumbing::__rust_begin_short_backtrace::> [INFO] [stderr] 17: 0x7e9cba8073a7 - >::call_once [INFO] [stderr] 18: 0x7e9cba7ecb5f - rustc_query_system[d45be4fb383a0235]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[8c5349e00d64015e]::plumbing::QueryCtxt, false> [INFO] [stderr] 19: 0x7e9cba7ec6bc - rustc_query_impl[8c5349e00d64015e]::query_impl::resolver_for_lowering_raw::get_query_non_incr::__rust_end_short_backtrace [INFO] [stderr] 20: 0x7e9cba97127b - , rustc_driver_impl[3f9d6dd912ac34bd]::run_compiler::{closure#0}::{closure#2}>::{closure#2} as core[75ca2badb63c4514]::ops::function::FnOnce<(&rustc_session[1e6875ba352dc1ba]::session::Session, rustc_middle[2342951a64deba5]::ty::context::CurrentGcx, alloc[d7482eb0f1d19161]::sync::Arc, &std[7d609349af90bec6]::sync::once_lock::OnceLock, &rustc_data_structures[c82a87ce5cdbfc92]::sync::worker_local::WorkerLocal, &rustc_data_structures[c82a87ce5cdbfc92]::sync::worker_local::WorkerLocal, rustc_driver_impl[3f9d6dd912ac34bd]::run_compiler::{closure#0}::{closure#2})>>::call_once::{shim:vtable#0} [INFO] [stderr] 21: 0x7e9cba85ac98 - rustc_interface[903e43df8d6bd657]::interface::run_compiler::<(), rustc_driver_impl[3f9d6dd912ac34bd]::run_compiler::{closure#0}>::{closure#1} [INFO] [stderr] 22: 0x7e9cba6eac4e - std[7d609349af90bec6]::sys::backtrace::__rust_begin_short_backtrace::::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}, ()> [INFO] [stderr] 23: 0x7e9cba6eaa20 - ::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}, ()>::{closure#1} as core[75ca2badb63c4514]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} [INFO] [stderr] 24: 0x7e9cba6ed138 - ::new::thread_start [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> tests/timeseries_table_test.rs:260:13 [INFO] [stdout] | [INFO] [stdout] 260 | DB_MEMORY.as_mut_ptr(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> tests/timeseries_table_test.rs:261:13 [INFO] [stdout] | [INFO] [stdout] 261 | DB_MEMORY.len() [INFO] [stdout] | ^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> tests/timeseries_table_test.rs:338:13 [INFO] [stdout] | [INFO] [stdout] 338 | DB_MEMORY.as_mut_ptr(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> tests/timeseries_table_test.rs:339:13 [INFO] [stdout] | [INFO] [stdout] 339 | DB_MEMORY.len() [INFO] [stdout] | ^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> tests/timeseries_table_test.rs:426:13 [INFO] [stdout] | [INFO] [stdout] 426 | DB_MEMORY.as_mut_ptr(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> tests/timeseries_table_test.rs:427:13 [INFO] [stdout] | [INFO] [stdout] 427 | DB_MEMORY.len() [INFO] [stdout] | ^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 25: 0x7e9cb428aaa4 - [INFO] [stderr] 26: 0x7e9cb4317a64 - clone [INFO] [stderr] 27: 0x0 - [INFO] [stderr] [INFO] [stderr] error: the compiler unexpectedly panicked. this is a bug. [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> tests/sql_insert_ignore_test.rs:146:18 [INFO] [stdout] | [INFO] [stdout] 146 | let mut db = unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> tests/sql_insert_ignore_test.rs:146:9 [INFO] [stdout] | [INFO] [stdout] 146 | let mut db = unsafe { [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] note: we would appreciate a bug report: https://github.com/rust-lang/rust/issues/new?labels=C-bug%2C+I-ICE%2C+T-compiler&template=ice.md [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> tests/sql_insert_ignore_test.rs:133:13 [INFO] [stdout] | [INFO] [stdout] 133 | DB_MEMORY.as_mut_ptr(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> tests/sql_insert_ignore_test.rs:134:13 [INFO] [stdout] | [INFO] [stdout] 134 | DB_MEMORY.len() [INFO] [stdout] | ^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] note: please make sure that you have updated to the latest nightly [INFO] [stderr] [INFO] [stderr] warning: the ICE couldn't be written to `/opt/rustwide/workdir/rustc-ice-2026-01-09T10_27_27-978.txt`: Read-only file system (os error 30) [INFO] [stderr] [INFO] [stderr] note: rustc 1.94.0-nightly (66388cc16 2026-01-08) running on x86_64-unknown-linux-gnu [INFO] [stderr] [INFO] [stderr] note: compiler flags: -C opt-level=1 -C embed-bitcode=no -C debuginfo=2 -C debug-assertions=on [INFO] [stderr] [INFO] [stderr] note: some of the compiler flags provided by cargo are hidden [INFO] [stderr] [INFO] [stderr] query stack during panic: [INFO] [stderr] #0 [resolver_for_lowering_raw] getting the resolver for lowering [INFO] [stderr] end of query stack [INFO] [stderr] error: could not compile `remdb` (test "time_series_module_test") [INFO] [stderr] [INFO] [stderr] Caused by: [INFO] [stderr] process didn't exit successfully: `/opt/rustwide/rustup-home/toolchains/66388cc165a6c4ac98c074dc9f0281ff23528c55/bin/rustc --crate-name time_series_module_test --edition=2021 tests/time_series_module_test.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --emit=dep-info,metadata -C opt-level=1 -C embed-bitcode=no -C debuginfo=2 -C debug-assertions=on --test --cfg 'feature="default"' --cfg 'feature="posix"' --cfg 'feature="rand"' --cfg 'feature="std"' --check-cfg 'cfg(docsrs,test)' --check-cfg 'cfg(feature, values("baremetal", "c-api", "debug", "default", "posix", "rand", "std"))' -C metadata=da699e074664e951 -C extra-filename=-e9cc12bab6d97448 --out-dir /opt/rustwide/target/debug/deps -L dependency=/opt/rustwide/target/debug/deps --extern criterion=/opt/rustwide/target/debug/deps/libcriterion-3b927cd18256be22.rmeta --extern rand=/opt/rustwide/target/debug/deps/librand-90033ffd45dc8e2f.rmeta --extern remdb=/opt/rustwide/target/debug/deps/libremdb-a962d06c4689a6ab.rmeta --extern remdb_macros=/opt/rustwide/target/debug/deps/libremdb_macros-965e504c6a539955.so --extern serial_test=/opt/rustwide/target/debug/deps/libserial_test-2bf51442ea4d2b7d.rmeta --cap-lints=forbid` (exit status: 101) [INFO] [stdout] warning: unused variable: `size` [INFO] [stdout] --> src/types.rs:68:31 [INFO] [stdout] | [INFO] [stdout] 68 | pub fn to_sql_type(&self, size: usize) -> &'static str { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_size` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `timestamp` [INFO] [stdout] --> src/types.rs:264:23 [INFO] [stdout] | [INFO] [stdout] 264 | pub fn to_iso8601(timestamp: &super::db_timestamp) -> alloc::string::String { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_timestamp` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `format` [INFO] [stdout] --> src/types.rs:271:53 [INFO] [stdout] | [INFO] [stdout] 271 | pub fn to_char(timestamp: &super::db_timestamp, format: &str) -> alloc::string::String { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_format` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/table.rs:40:9 [INFO] [stdout] | [INFO] [stdout] 40 | unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `slot_id` is never read [INFO] [stdout] --> src/table.rs:445:27 [INFO] [stdout] | [INFO] [stdout] 445 | let mut slot_id = 0; [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `last` [INFO] [stdout] --> src/table.rs:1740:44 [INFO] [stdout] | [INFO] [stdout] 1740 | for (window_start, (sum, min, max, last, count)) in window_aggregates { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_last` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/index.rs:985:17 [INFO] [stdout] | [INFO] [stdout] 985 | let mut node_mut = &mut *node_ptr; [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/index.rs:1035:13 [INFO] [stdout] | [INFO] [stdout] 1035 | let mut node_mut = &mut *node_ptr.as_ptr(); [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/index.rs:1223:17 [INFO] [stdout] | [INFO] [stdout] 1223 | let mut root = self.root.expect("Root node unexpectedly None"); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `key` [INFO] [stdout] --> src/index.rs:1544:37 [INFO] [stdout] | [INFO] [stdout] 1544 | pub unsafe fn delete(&mut self, key: *const u8, key_size: usize) -> Result<()> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_key` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `key_size` [INFO] [stdout] --> src/index.rs:1544:53 [INFO] [stdout] | [INFO] [stdout] 1544 | pub unsafe fn delete(&mut self, key: *const u8, key_size: usize) -> Result<()> { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_key_size` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/index.rs:1584:17 [INFO] [stdout] | [INFO] [stdout] 1584 | let mut node_mut = &mut *node_ptr; [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/index.rs:1632:13 [INFO] [stdout] | [INFO] [stdout] 1632 | let mut node_mut = &mut *node_ptr.as_ptr(); [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `key` [INFO] [stdout] --> src/index.rs:2207:37 [INFO] [stdout] | [INFO] [stdout] 2207 | pub unsafe fn delete(&mut self, key: *const u8, key_size: usize) -> Result<()> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_key` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `key_size` [INFO] [stdout] --> src/index.rs:2207:53 [INFO] [stdout] | [INFO] [stdout] 2207 | pub unsafe fn delete(&mut self, key: *const u8, key_size: usize) -> Result<()> { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_key_size` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/transaction.rs:778:9 [INFO] [stdout] | [INFO] [stdout] 778 | unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/sql/query_parser.rs:878:40 [INFO] [stdout] | [INFO] [stdout] 878 | Expression::Field { alias: mut expr_alias, name, .. } => { [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/sql/query_parser.rs:884:47 [INFO] [stdout] | [INFO] [stdout] 884 | Expression::FunctionCall { alias: mut expr_alias, name, args, .. } => { [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/sql/query_parser.rs:891:43 [INFO] [stdout] | [INFO] [stdout] 891 | Expression::Constant { alias: mut expr_alias, value, .. } => { [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `saved_pos` [INFO] [stdout] --> src/sql/query_parser.rs:814:17 [INFO] [stdout] | [INFO] [stdout] 814 | let saved_pos = self.position; [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_saved_pos` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `saved_col` [INFO] [stdout] --> src/sql/query_parser.rs:815:17 [INFO] [stdout] | [INFO] [stdout] 815 | let saved_col = self.column; [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_saved_col` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `saved_pos` [INFO] [stdout] --> src/sql/query_parser.rs:1043:13 [INFO] [stdout] | [INFO] [stdout] 1043 | let saved_pos = self.position; [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_saved_pos` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `saved_col` [INFO] [stdout] --> src/sql/query_parser.rs:1044:13 [INFO] [stdout] | [INFO] [stdout] 1044 | let saved_col = self.column; [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_saved_col` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tz_param` [INFO] [stdout] --> src/sql/query_parser.rs:1277:17 [INFO] [stdout] | [INFO] [stdout] 1277 | let tz_param = self.parse_value()?; [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_tz_param` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `time_param` [INFO] [stdout] --> src/sql/query_parser.rs:1288:17 [INFO] [stdout] | [INFO] [stdout] 1288 | let time_param = self.parse_value()?; [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_time_param` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `format_param` [INFO] [stdout] --> src/sql/query_parser.rs:1293:17 [INFO] [stdout] | [INFO] [stdout] 1293 | let format_param = self.parse_value()?; [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_format_param` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `time_param` [INFO] [stdout] --> src/sql/query_parser.rs:1304:17 [INFO] [stdout] | [INFO] [stdout] 1304 | let time_param = self.parse_value()?; [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_time_param` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `time_param` [INFO] [stdout] --> src/sql/query_parser.rs:1315:17 [INFO] [stdout] | [INFO] [stdout] 1315 | let time_param = self.parse_value()?; [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_time_param` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tz_value` [INFO] [stdout] --> src/sql/query_parser.rs:1347:21 [INFO] [stdout] | [INFO] [stdout] 1347 | let tz_value = self.parse_value()?; [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_tz_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/sql/query_executor.rs:165:9 [INFO] [stdout] | [INFO] [stdout] 165 | let mut matched_rows: Vec> = Vec::new(); [INFO] [stdout] | ----^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `expr` [INFO] [stdout] --> src/sql/query_executor.rs:178:13 [INFO] [stdout] | [INFO] [stdout] 178 | for expr in &columns { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_expr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/sql/query_executor.rs:283:47 [INFO] [stdout] | [INFO] [stdout] 277 | unsafe { [INFO] [stdout] | ------ because it's nested under this `unsafe` block [INFO] [stdout] ... [INFO] [stdout] 283 | let is_less = unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/sql/query_executor.rs:310:50 [INFO] [stdout] | [INFO] [stdout] 304 | unsafe { [INFO] [stdout] | ------ because it's nested under this `unsafe` block [INFO] [stdout] ... [INFO] [stdout] 310 | let is_greater = unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `record_values` [INFO] [stdout] --> src/sql/query_executor.rs:365:5 [INFO] [stdout] | [INFO] [stdout] 365 | record_values: &[TypedValue], [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_record_values` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `id` [INFO] [stdout] --> src/sql/query_executor.rs:461:45 [INFO] [stdout] | [INFO] [stdout] 461 | let iterate_result = table.iterate(|id, record_ptr| { [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `args` [INFO] [stdout] --> src/sql/query_executor.rs:823:18 [INFO] [stdout] | [INFO] [stdout] 823 | fn execute_count(args: &[TypedValue]) -> Result { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_args` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `seq_num` [INFO] [stdout] --> src/pubsub/mod.rs:267:13 [INFO] [stdout] | [INFO] [stdout] 267 | let seq_num = frame.seq_num(); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_seq_num` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> src/pubsub/mod.rs:274:20 [INFO] [stdout] | [INFO] [stdout] 274 | if let Err(e) = self.subscribers.handle_data(topic_id, payload) { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `last_log_index` [INFO] [stdout] --> src/ha/replication.rs:140:44 [INFO] [stdout] | [INFO] [stdout] 140 | pub fn request_incremental_sync(&self, last_log_index: u32) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_last_log_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `table` [INFO] [stdout] --> src/lib.rs:284:25 [INFO] [stdout] | [INFO] [stdout] 284 | if let Some(table) = table { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_table` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ts_table` [INFO] [stdout] --> src/lib.rs:292:25 [INFO] [stdout] | [INFO] [stdout] 292 | if let Some(ts_table) = ts_table { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ts_table` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/lib.rs:1164:29 [INFO] [stdout] | [INFO] [stdout] 1164 | let has_active_tx = unsafe { crate::transaction::has_active_tx() }; [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_field_by_offset` is never used [INFO] [stdout] --> src/table.rs:395:15 [INFO] [stdout] | [INFO] [stdout] 51 | impl MemoryTable { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 395 | unsafe fn get_field_by_offset(&self, record_data: *const u8, offset: usize, data_type: DataType, size: usize) -> Result [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `def` and `items` are never read [INFO] [stdout] --> src/index.rs:125:5 [INFO] [stdout] | [INFO] [stdout] 123 | pub struct PrimaryIndex { [INFO] [stdout] | ------------ fields in this struct [INFO] [stdout] 124 | /// 表定义 [INFO] [stdout] 125 | def: alloc::sync::Arc, [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 131 | items: NonNull, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `def` is never read [INFO] [stdout] --> src/index.rs:506:5 [INFO] [stdout] | [INFO] [stdout] 504 | pub struct SecondaryIndex { [INFO] [stdout] | -------------- field in this struct [INFO] [stdout] 505 | /// 表定义 [INFO] [stdout] 506 | def: alloc::sync::Arc, [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `free_node` is never used [INFO] [stdout] --> src/index.rs:1067:15 [INFO] [stdout] | [INFO] [stdout] 971 | impl BTreeIndex { [INFO] [stdout] | --------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 1067 | unsafe fn free_node(&mut self, node_ptr: NonNull) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `free_node` is never used [INFO] [stdout] --> src/index.rs:1663:15 [INFO] [stdout] | [INFO] [stdout] 1570 | impl TTreeIndex { [INFO] [stdout] | --------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 1663 | unsafe fn free_node(&mut self, node_ptr: NonNull) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `log_file_size_limit` and `log_segment_size` are never read [INFO] [stdout] --> src/transaction.rs:168:5 [INFO] [stdout] | [INFO] [stdout] 144 | pub struct LogManager { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 168 | log_file_size_limit: usize, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 169 | /// 日志分段大小 [INFO] [stdout] 170 | log_segment_size: usize, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_eof` is never used [INFO] [stdout] --> src/sql/query_parser.rs:1513:8 [INFO] [stdout] | [INFO] [stdout] 295 | impl SqlParser { [INFO] [stdout] | -------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 1513 | fn is_eof(&self) -> bool { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `process_at_time_zone` is never used [INFO] [stdout] --> src/sql/query_executor.rs:2546:4 [INFO] [stdout] | [INFO] [stdout] 2546 | fn process_at_time_zone(timestamp: &crate::types::db_timestamp, timezone_spec: &str) -> Result src/sql/query_executor.rs:2570:4 [INFO] [stdout] | [INFO] [stdout] 2570 | fn process_timezone_function(timezone_spec: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `string_to_columns` is never used [INFO] [stdout] --> src/sql/result_set.rs:199:8 [INFO] [stdout] | [INFO] [stdout] 199 | pub fn string_to_columns(s: &str) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `values_to_string` is never used [INFO] [stdout] --> src/sql/result_set.rs:235:8 [INFO] [stdout] | [INFO] [stdout] 235 | pub fn values_to_string(values: &[TypedValue]) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `config` is never read [INFO] [stdout] --> src/pubsub/mod.rs:121:5 [INFO] [stdout] | [INFO] [stdout] 120 | pub struct PubSub { [INFO] [stdout] | ------ field in this struct [INFO] [stdout] 121 | config: PubSubConfig, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `receive_loop`, `handle_received_data`, `handle_data_frame`, `handle_nack_frame`, and `handle_heartbeat_frame` are never used [INFO] [stdout] --> src/pubsub/mod.rs:186:8 [INFO] [stdout] | [INFO] [stdout] 128 | impl PubSub { [INFO] [stdout] | ----------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 186 | fn receive_loop(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 228 | fn handle_received_data(&mut self, data: &[u8]) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 264 | fn handle_data_frame(&mut self, frame: protocol::ProtocolFrame) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 280 | fn handle_nack_frame(&mut self, frame: protocol::ProtocolFrame) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 303 | fn handle_heartbeat_frame(&mut self, _frame: protocol::ProtocolFrame) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `buffer_size` is never read [INFO] [stdout] --> src/pubsub/udp.rs:85:9 [INFO] [stdout] | [INFO] [stdout] 79 | pub struct PosixUdpSocket { [INFO] [stdout] | -------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 85 | buffer_size: usize, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `topic_id` is never read [INFO] [stdout] --> src/pubsub/subscriber.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 13 | struct Subscriber { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 17 | topic_id: u16, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `is_initialized` is never read [INFO] [stdout] --> src/ha/manager.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 11 | pub struct HAManager { [INFO] [stdout] | --------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 21 | is_initialized: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SYNC_REQUEST_TOPIC` is never used [INFO] [stdout] --> src/ha/replication.rs:12:7 [INFO] [stdout] | [INFO] [stdout] 12 | const SYNC_REQUEST_TOPIC: u16 = 2; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `confirmed_slaves`, `lock`, and `is_initialized` are never read [INFO] [stdout] --> src/ha/replication.rs:19:5 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct ReplicationManager { [INFO] [stdout] | ------------------ fields in this struct [INFO] [stdout] ... [INFO] [stdout] 19 | confirmed_slaves: usize, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 20 | /// 自旋锁 [INFO] [stdout] 21 | lock: u32, [INFO] [stdout] | ^^^^ [INFO] [stdout] 22 | /// 是否初始化 [INFO] [stdout] 23 | is_initialized: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `handle_wal_log` is never used [INFO] [stdout] --> src/ha/replication.rs:91:8 [INFO] [stdout] | [INFO] [stdout] 26 | impl ReplicationManager { [INFO] [stdout] | ----------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 91 | fn handle_wal_log(&self, _data: &[u8]) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HEARTBEAT_TOPIC` is never used [INFO] [stdout] --> src/ha/heartbeat.rs:9:7 [INFO] [stdout] | [INFO] [stdout] 9 | const HEARTBEAT_TOPIC: u16 = 3; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `heartbeat_interval`, `failure_detection_time`, `lock`, and `is_initialized` are never read [INFO] [stdout] --> src/ha/heartbeat.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 12 | pub struct HeartbeatMonitor { [INFO] [stdout] | ---------------- fields in this struct [INFO] [stdout] 13 | /// 心跳间隔(毫秒) [INFO] [stdout] 14 | heartbeat_interval: u64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 15 | /// 故障检测时间(毫秒) [INFO] [stdout] 16 | failure_detection_time: u64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 22 | lock: u32, [INFO] [stdout] | ^^^^ [INFO] [stdout] 23 | /// 是否初始化 [INFO] [stdout] 24 | is_initialized: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `handle_heartbeat` and `send_heartbeat` are never used [INFO] [stdout] --> src/ha/heartbeat.rs:104:8 [INFO] [stdout] | [INFO] [stdout] 27 | impl HeartbeatMonitor { [INFO] [stdout] | --------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 104 | fn handle_heartbeat(&self, _data: &[u8]) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 122 | fn send_heartbeat(&self) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `lock` and `is_initialized` are never read [INFO] [stdout] --> src/ha/role.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct RoleManager { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 17 | lock: u32, [INFO] [stdout] | ^^^^ [INFO] [stdout] 18 | /// 是否初始化 [INFO] [stdout] 19 | is_initialized: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/lib.rs:344:9 [INFO] [stdout] | [INFO] [stdout] 344 | crate::transaction::TX_MANAGER.begin(tx_type, isolation_level, tx_buffer, log_buffer, max_log_items) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/lib.rs:349:9 [INFO] [stdout] | [INFO] [stdout] 349 | crate::transaction::TX_MANAGER.commit() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/lib.rs:354:9 [INFO] [stdout] | [INFO] [stdout] 354 | crate::transaction::TX_MANAGER.rollback(self) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/lib.rs:1714:12 [INFO] [stdout] | [INFO] [stdout] 1714 | Ok(DB_INSTANCE.as_mut().unwrap()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/lib.rs:1721:9 [INFO] [stdout] | [INFO] [stdout] 1721 | DB_INSTANCE.as_mut() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/transaction.rs:1205:5 [INFO] [stdout] | [INFO] [stdout] 1205 | TX_MANAGER.begin(tx_type, isolation_level, tx_buffer, log_buffer, max_log_items) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/transaction.rs:1210:5 [INFO] [stdout] | [INFO] [stdout] 1210 | TX_MANAGER.commit() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/transaction.rs:1215:5 [INFO] [stdout] | [INFO] [stdout] 1215 | TX_MANAGER.rollback(db) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/transaction.rs:1220:14 [INFO] [stdout] | [INFO] [stdout] 1220 | unsafe { TX_MANAGER.get_current_tx() } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/transaction.rs:1225:14 [INFO] [stdout] | [INFO] [stdout] 1225 | unsafe { TX_MANAGER.has_active_tx() } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/transaction.rs:1230:5 [INFO] [stdout] | [INFO] [stdout] 1230 | TX_MANAGER.set_low_power_mode(enabled); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/transaction.rs:1235:5 [INFO] [stdout] | [INFO] [stdout] 1235 | TX_MANAGER.set_log_manager(log_manager); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/pubsub/mod.rs:366:12 [INFO] [stdout] | [INFO] [stdout] 366 | if PUB_SUB_INSTANCE.is_some() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/ha/mod.rs:56:12 [INFO] [stdout] | [INFO] [stdout] 56 | if HA_MANAGER.is_some() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/ha/mod.rs:71:9 [INFO] [stdout] | [INFO] [stdout] 71 | HA_MANAGER.as_mut() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "5935b8af2b711211c37e1c4c18b25a693011b3b0666a9f09687c2859374d99b9", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "5935b8af2b711211c37e1c4c18b25a693011b3b0666a9f09687c2859374d99b9", kill_on_drop: false }` [INFO] [stdout] 5935b8af2b711211c37e1c4c18b25a693011b3b0666a9f09687c2859374d99b9