[INFO] fetching crate remdb 0.1.24...
[INFO] testing remdb-0.1.24 against try#db823df02fd0c2cf67b43025ac3fef3f2d743245 for pr-150681
[INFO] extracting crate remdb 0.1.24 into /workspace/builds/worker-4-tc2/source
[INFO] removed /workspace/builds/worker-4-tc2/source/.cargo/config.toml
[INFO] started tweaking crates.io crate remdb 0.1.24
[INFO] removed 0 missing examples
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate remdb 0.1.24
[INFO] tweaked toml for crates.io crate remdb 0.1.24 written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate remdb 0.1.24 on toolchain db823df02fd0c2cf67b43025ac3fef3f2d743245
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+db823df02fd0c2cf67b43025ac3fef3f2d743245" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate remdb 0.1.24 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" "+db823df02fd0c2cf67b43025ac3fef3f2d743245" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+db823df02fd0c2cf67b43025ac3fef3f2d743245" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 43c9ab97374ca870101df94b55223bffad893e809bd6ed9bc47b8a561051f22b
[INFO] running `Command { std: "docker" "start" "-a" "43c9ab97374ca870101df94b55223bffad893e809bd6ed9bc47b8a561051f22b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "43c9ab97374ca870101df94b55223bffad893e809bd6ed9bc47b8a561051f22b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "43c9ab97374ca870101df94b55223bffad893e809bd6ed9bc47b8a561051f22b", kill_on_drop: false }`
[INFO] [stdout] 43c9ab97374ca870101df94b55223bffad893e809bd6ed9bc47b8a561051f22b
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+db823df02fd0c2cf67b43025ac3fef3f2d743245" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] f0a071706285a8c3ddcc1f8bf4113387cf97079fd153a7d9f256bd4d6daf5a1c
[INFO] running `Command { std: "docker" "start" "-a" "f0a071706285a8c3ddcc1f8bf4113387cf97079fd153a7d9f256bd4d6daf5a1c", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.178
[INFO] [stderr]    Compiling cfg-if v1.0.4
[INFO] [stderr]    Compiling zerocopy v0.8.31
[INFO] [stderr]    Compiling proc-macro2 v1.0.103
[INFO] [stderr]    Compiling quote v1.0.42
[INFO] [stderr]    Compiling syn v2.0.111
[INFO] [stderr]    Compiling getrandom v0.2.16
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling remdb-macros v0.1.24
[INFO] [stderr]    Compiling remdb v0.1.24 (/opt/rustwide/workdir)
[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 variable: `size`
[INFO] [stdout]   --> src/types.rs:57:31
[INFO] [stdout]    |
[INFO] [stdout] 57 |     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: 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:317:27
[INFO] [stdout]     |
[INFO] [stdout] 317 |         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:1595:44
[INFO] [stdout]      |
[INFO] [stdout] 1595 |         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:744:9
[INFO] [stdout]     |
[INFO] [stdout] 744 |         unsafe {
[INFO] [stdout]     |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `id`
[INFO] [stdout]   --> src/sql/query_executor.rs:86:45
[INFO] [stdout]    |
[INFO] [stdout] 86 |         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: `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: `e`
[INFO] [stdout]    --> src/pubsub/mod.rs:307:20
[INFO] [stdout]     |
[INFO] [stdout] 307 |         if let Err(e) = self.subscribers.cleanup_inactive(heartbeat_timeout) {
[INFO] [stdout]     |                    ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]   --> src/ha/replication.rs:91:30
[INFO] [stdout]    |
[INFO] [stdout] 91 |     fn handle_wal_log(&self, data: &[u8]) {
[INFO] [stdout]    |                              ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[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: `data`
[INFO] [stdout]    --> src/ha/heartbeat.rs:104:32
[INFO] [stdout]     |
[INFO] [stdout] 104 |     fn handle_heartbeat(&self, data: &[u8]) {
[INFO] [stdout]     |                                ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]   --> src/lib.rs:94:9
[INFO] [stdout]    |
[INFO] [stdout] 94 |         unsafe {
[INFO] [stdout]    |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/lib.rs:95:24
[INFO] [stdout]    |
[INFO] [stdout] 95 |             if let Err(e) = crate::ha::shutdown() {
[INFO] [stdout]    |                        ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/lib.rs:345:9
[INFO] [stdout]     |
[INFO] [stdout] 345 |         unsafe {
[INFO] [stdout]     |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/lib.rs:346:24
[INFO] [stdout]     |
[INFO] [stdout] 346 |             if let Err(e) = crate::ha::init(self.config) {
[INFO] [stdout]     |                        ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_field_by_offset` is never used
[INFO] [stdout]    --> src/table.rs:269:15
[INFO] [stdout]     |
[INFO] [stdout]  51 | impl MemoryTable {
[INFO] [stdout]     | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 269 |     unsafe fn get_field_by_offset(&self, record_data: *const u8, offset: usize, data_type: DataType, size: usize) -> Result<Value>
[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<TableDef>,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] ...
[INFO] [stdout] 131 |     items: NonNull<PrimaryIndexItem>,
[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<TableDef>,
[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<BTreeNode>) {
[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<TTreeNode>) {
[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:166:5
[INFO] [stdout]     |
[INFO] [stdout] 142 | pub struct LogManager {
[INFO] [stdout]     |            ---------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 166 |     log_file_size_limit: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 167 |     /// 日志分段大小
[INFO] [stdout] 168 |     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:985:8
[INFO] [stdout]     |
[INFO] [stdout] 193 | impl SqlParser {
[INFO] [stdout]     | -------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 985 |     fn is_eof(&self) -> bool {
[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<String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `values_to_string` is never used
[INFO] [stdout]    --> src/sql/result_set.rs:231:8
[INFO] [stdout]     |
[INFO] [stdout] 231 | 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:243:13
[INFO] [stdout]     |
[INFO] [stdout] 243 |             crate::transaction::TX_MANAGER.set_low_power_mode(true);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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:273:13
[INFO] [stdout]     |
[INFO] [stdout] 273 |             crate::transaction::TX_MANAGER.set_low_power_mode(false);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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:298:9
[INFO] [stdout]     |
[INFO] [stdout] 298 |         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 <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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:303:9
[INFO] [stdout]     |
[INFO] [stdout] 303 |         crate::transaction::TX_MANAGER.commit()
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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:308:9
[INFO] [stdout]     |
[INFO] [stdout] 308 |         crate::transaction::TX_MANAGER.rollback(self)
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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:335:25
[INFO] [stdout]     |
[INFO] [stdout] 335 |                         crate::transaction::TX_MANAGER.set_log_manager(log_manager);
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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:1410:12
[INFO] [stdout]      |
[INFO] [stdout] 1410 |         Ok(DB_INSTANCE.as_mut().unwrap())
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]      |
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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:1417:9
[INFO] [stdout]      |
[INFO] [stdout] 1417 |         DB_INSTANCE.as_mut()
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]      |
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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:1212:5
[INFO] [stdout]      |
[INFO] [stdout] 1212 |     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 <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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:1217:5
[INFO] [stdout]      |
[INFO] [stdout] 1217 |     TX_MANAGER.commit()
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]      |
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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:1222:5
[INFO] [stdout]      |
[INFO] [stdout] 1222 |     TX_MANAGER.rollback(db)
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]      |
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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:1227:14
[INFO] [stdout]      |
[INFO] [stdout] 1227 |     unsafe { TX_MANAGER.get_current_tx() }
[INFO] [stdout]      |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]      |
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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:1232:14
[INFO] [stdout]      |
[INFO] [stdout] 1232 |     unsafe { TX_MANAGER.has_active_tx() }
[INFO] [stdout]      |              ^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]      |
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/sql/result_set.rs:80:17
[INFO] [stdout]    |
[INFO] [stdout] 80 |     pub fn iter(&self) -> ResultRowIter {
[INFO] [stdout]    |                 ^^^^^     ^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 80 |     pub fn iter(&self) -> ResultRowIter<'_> {
[INFO] [stdout]    |                                        ++++
[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 <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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 <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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 <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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]     Finished `dev` profile [optimized + debuginfo] target(s) in 7.96s
[INFO] running `Command { std: "docker" "inspect" "f0a071706285a8c3ddcc1f8bf4113387cf97079fd153a7d9f256bd4d6daf5a1c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f0a071706285a8c3ddcc1f8bf4113387cf97079fd153a7d9f256bd4d6daf5a1c", kill_on_drop: false }`
[INFO] [stdout] f0a071706285a8c3ddcc1f8bf4113387cf97079fd153a7d9f256bd4d6daf5a1c
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+db823df02fd0c2cf67b43025ac3fef3f2d743245" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] db117ee36eedf7dba1e37c8ce4317371489825b3af417ef6bb9028bfdd4a9ff2
[INFO] running `Command { std: "docker" "start" "-a" "db117ee36eedf7dba1e37c8ce4317371489825b3af417ef6bb9028bfdd4a9ff2", kill_on_drop: false }`
[INFO] [stderr]    Compiling cfg-if v1.0.4
[INFO] [stderr]    Compiling zerocopy v0.8.31
[INFO] [stderr]    Compiling memchr v2.7.6
[INFO] [stderr]    Compiling futures-sink v0.3.31
[INFO] [stderr]    Compiling futures-core v0.3.31
[INFO] [stderr]    Compiling pin-project-lite v0.2.16
[INFO] [stderr]    Compiling pin-utils v0.1.0
[INFO] [stderr]    Compiling serde_json v1.0.147
[INFO] [stderr]    Compiling libc v0.2.178
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling futures-io v0.3.31
[INFO] [stderr]    Compiling futures-task v0.3.31
[INFO] [stderr]    Compiling slab v0.4.11
[INFO] [stderr]    Compiling zerocopy-derive v0.8.31
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling rayon-core v1.13.0
[INFO] [stderr]    Compiling futures-channel v0.3.31
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling clap_lex v0.7.6
[INFO] [stderr]    Compiling anstyle v1.0.13
[INFO] [stderr]    Compiling itoa v1.0.16
[INFO] [stderr]    Compiling ciborium-io v0.2.2
[INFO] [stderr]    Compiling plotters-backend v0.3.7
[INFO] [stderr]    Compiling smallvec v1.15.1
[INFO] [stderr]    Compiling zmij v0.1.7
[INFO] [stderr]    Compiling regex-syntax v0.8.8
[INFO] [stderr]    Compiling scopeguard v1.2.0
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.18
[INFO] [stderr]    Compiling lock_api v0.4.14
[INFO] [stderr]    Compiling clap_builder v4.5.53
[INFO] [stderr]    Compiling itertools v0.10.5
[INFO] [stderr]    Compiling sdd v3.0.10
[INFO] [stderr]    Compiling cast v0.3.0
[INFO] [stderr]    Compiling same-file v1.0.6
[INFO] [stderr]    Compiling futures-util v0.3.31
[INFO] [stderr]    Compiling crossbeam-deque v0.8.6
[INFO] [stderr]    Compiling plotters-svg v0.3.7
[INFO] [stderr]    Compiling once_cell v1.21.3
[INFO] [stderr]    Compiling scc v2.4.0
[INFO] [stderr]    Compiling walkdir v2.5.0
[INFO] [stderr]    Compiling serial_test_derive v3.2.0
[INFO] [stderr]    Compiling log v0.4.29
[INFO] [stderr]    Compiling oorandom v11.1.5
[INFO] [stderr]    Compiling rayon v1.11.0
[INFO] [stderr]    Compiling plotters v0.3.7
[INFO] [stderr]    Compiling anes v0.1.6
[INFO] [stderr]    Compiling regex-automata v0.4.13
[INFO] [stderr]    Compiling getrandom v0.2.16
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling clap v4.5.53
[INFO] [stderr]    Compiling is-terminal v0.4.17
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling criterion-plot v0.5.0
[INFO] [stderr]    Compiling regex v1.12.2
[INFO] [stderr]    Compiling half v2.7.1
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling tinytemplate v1.2.1
[INFO] [stderr]    Compiling ciborium-ll v0.2.2
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling ciborium v0.2.2
[INFO] [stderr]    Compiling futures-executor v0.3.31
[INFO] [stderr]    Compiling futures v0.3.31
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling criterion v0.5.1
[INFO] [stderr]    Compiling serial_test v3.2.0
[INFO] [stderr]    Compiling remdb v0.1.24 (/opt/rustwide/workdir)
[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 variable: `size`
[INFO] [stdout]   --> src/types.rs:57:31
[INFO] [stdout]    |
[INFO] [stdout] 57 |     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: 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:317:27
[INFO] [stdout]     |
[INFO] [stdout] 317 |         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:1595:44
[INFO] [stdout]      |
[INFO] [stdout] 1595 |         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:744:9
[INFO] [stdout]     |
[INFO] [stdout] 744 |         unsafe {
[INFO] [stdout]     |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `id`
[INFO] [stdout]   --> src/sql/query_executor.rs:86:45
[INFO] [stdout]    |
[INFO] [stdout] 86 |         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: `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: `e`
[INFO] [stdout]    --> src/pubsub/mod.rs:307:20
[INFO] [stdout]     |
[INFO] [stdout] 307 |         if let Err(e) = self.subscribers.cleanup_inactive(heartbeat_timeout) {
[INFO] [stdout]     |                    ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]   --> src/ha/replication.rs:91:30
[INFO] [stdout]    |
[INFO] [stdout] 91 |     fn handle_wal_log(&self, data: &[u8]) {
[INFO] [stdout]    |                              ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[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: `data`
[INFO] [stdout]    --> src/ha/heartbeat.rs:104:32
[INFO] [stdout]     |
[INFO] [stdout] 104 |     fn handle_heartbeat(&self, data: &[u8]) {
[INFO] [stdout]     |                                ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]   --> src/lib.rs:94:9
[INFO] [stdout]    |
[INFO] [stdout] 94 |         unsafe {
[INFO] [stdout]    |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/lib.rs:95:24
[INFO] [stdout]    |
[INFO] [stdout] 95 |             if let Err(e) = crate::ha::shutdown() {
[INFO] [stdout]    |                        ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/lib.rs:345:9
[INFO] [stdout]     |
[INFO] [stdout] 345 |         unsafe {
[INFO] [stdout]     |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/lib.rs:346:24
[INFO] [stdout]     |
[INFO] [stdout] 346 |             if let Err(e) = crate::ha::init(self.config) {
[INFO] [stdout]     |                        ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_field_by_offset` is never used
[INFO] [stdout]    --> src/table.rs:269:15
[INFO] [stdout]     |
[INFO] [stdout]  51 | impl MemoryTable {
[INFO] [stdout]     | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 269 |     unsafe fn get_field_by_offset(&self, record_data: *const u8, offset: usize, data_type: DataType, size: usize) -> Result<Value>
[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<TableDef>,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] ...
[INFO] [stdout] 131 |     items: NonNull<PrimaryIndexItem>,
[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<TableDef>,
[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<BTreeNode>) {
[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<TTreeNode>) {
[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:166:5
[INFO] [stdout]     |
[INFO] [stdout] 142 | pub struct LogManager {
[INFO] [stdout]     |            ---------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 166 |     log_file_size_limit: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 167 |     /// 日志分段大小
[INFO] [stdout] 168 |     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:985:8
[INFO] [stdout]     |
[INFO] [stdout] 193 | impl SqlParser {
[INFO] [stdout]     | -------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 985 |     fn is_eof(&self) -> bool {
[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<String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `values_to_string` is never used
[INFO] [stdout]    --> src/sql/result_set.rs:231:8
[INFO] [stdout]     |
[INFO] [stdout] 231 | 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:243:13
[INFO] [stdout]     |
[INFO] [stdout] 243 |             crate::transaction::TX_MANAGER.set_low_power_mode(true);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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:273:13
[INFO] [stdout]     |
[INFO] [stdout] 273 |             crate::transaction::TX_MANAGER.set_low_power_mode(false);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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:298:9
[INFO] [stdout]     |
[INFO] [stdout] 298 |         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 <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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:303:9
[INFO] [stdout]     |
[INFO] [stdout] 303 |         crate::transaction::TX_MANAGER.commit()
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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:308:9
[INFO] [stdout]     |
[INFO] [stdout] 308 |         crate::transaction::TX_MANAGER.rollback(self)
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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:335:25
[INFO] [stdout]     |
[INFO] [stdout] 335 |                         crate::transaction::TX_MANAGER.set_log_manager(log_manager);
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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:1410:12
[INFO] [stdout]      |
[INFO] [stdout] 1410 |         Ok(DB_INSTANCE.as_mut().unwrap())
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]      |
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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:1417:9
[INFO] [stdout]      |
[INFO] [stdout] 1417 |         DB_INSTANCE.as_mut()
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]      |
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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:1212:5
[INFO] [stdout]      |
[INFO] [stdout] 1212 |     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 <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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:1217:5
[INFO] [stdout]      |
[INFO] [stdout] 1217 |     TX_MANAGER.commit()
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]      |
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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:1222:5
[INFO] [stdout]      |
[INFO] [stdout] 1222 |     TX_MANAGER.rollback(db)
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]      |
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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:1227:14
[INFO] [stdout]      |
[INFO] [stdout] 1227 |     unsafe { TX_MANAGER.get_current_tx() }
[INFO] [stdout]      |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]      |
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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:1232:14
[INFO] [stdout]      |
[INFO] [stdout] 1232 |     unsafe { TX_MANAGER.has_active_tx() }
[INFO] [stdout]      |              ^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]      |
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/sql/result_set.rs:80:17
[INFO] [stdout]    |
[INFO] [stdout] 80 |     pub fn iter(&self) -> ResultRowIter {
[INFO] [stdout]    |                 ^^^^^     ^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 80 |     pub fn iter(&self) -> ResultRowIter<'_> {
[INFO] [stdout]    |                                        ++++
[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 <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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 <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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 <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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: `alloc::vec::Vec`
[INFO] [stdout]  --> examples/sql_query.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use alloc::vec::Vec;
[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::alloc::Layout`
[INFO] [stdout]   --> examples/sql_query.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use core::alloc::Layout;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `core::ptr::NonNull`
[INFO] [stdout]   --> examples/sql_query.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use core::ptr::NonNull;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[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: unnecessary `unsafe` block
[INFO] [stdout]    --> tests/sql_query_test.rs:300:17
[INFO] [stdout]     |
[INFO] [stdout] 300 |     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] [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: 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 <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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 <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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: unused `#[macro_use]` import
[INFO] [stdout]  --> examples/ha_example.rs:3:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[macro_use]
[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::ptr::NonNull`
[INFO] [stdout]  --> examples/ha_example.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use core::ptr::NonNull;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HARole` and `ReplicationMode`
[INFO] [stdout]  --> examples/ha_example.rs:8:21
[INFO] [stdout]   |
[INFO] [stdout] 8 | use remdb::config::{HARole, ReplicationMode};
[INFO] [stdout]   |                     ^^^^^^  ^^^^^^^^^^^^^^^
[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] [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] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> examples/test_default_value.rs:18:27
[INFO] [stdout]    |
[INFO] [stdout] 18 |         memory_allocator: &mut DEFAULT_ALLOCATOR,
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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] 18 |         memory_allocator: &raw mut DEFAULT_ALLOCATOR,
[INFO] [stdout]    |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> examples/test_default_value.rs:41:31
[INFO] [stdout]    |
[INFO] [stdout] 41 |         init_global_allocator(MEMORY_BUFFER.as_mut_ptr(), MEMORY_BUFFER.len())
[INFO] [stdout]    |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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]   --> examples/test_default_value.rs:41:59
[INFO] [stdout]    |
[INFO] [stdout] 41 |         init_global_allocator(MEMORY_BUFFER.as_mut_ptr(), MEMORY_BUFFER.len())
[INFO] [stdout]    |                                                           ^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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: unused import: `DdlExecutor`
[INFO] [stdout]  --> examples/ddl_runtime_example.rs:3:20
[INFO] [stdout]   |
[INFO] [stdout] 3 | use remdb::{RemDb, DdlExecutor, types::{DataType, IndexType}};
[INFO] [stdout]   |                    ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> tests/dynamic_ddl_test.rs:130:5
[INFO] [stdout]     |
[INFO] [stdout] 130 |     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/dynamic_ddl_test.rs:182:5
[INFO] [stdout]     |
[INFO] [stdout] 182 |     unsafe {
[INFO] [stdout]     |     ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Result as HAResult`
[INFO] [stdout]  --> tests/ha_test.rs:5:26
[INFO] [stdout]   |
[INFO] [stdout] 5 | use remdb::ha::{HAError, Result as HAResult};
[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::ptr::NonNull`
[INFO] [stdout]  --> examples/basic_usage.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use core::ptr::NonNull;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> tests/dynamic_ddl_test.rs:266:5
[INFO] [stdout]     |
[INFO] [stdout] 266 |     unsafe {
[INFO] [stdout]     |     ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tx`
[INFO] [stdout]   --> examples/ha_example.rs:73:13
[INFO] [stdout]    |
[INFO] [stdout] 73 |         let tx = transaction::begin(
[INFO] [stdout]    |             ^^ help: if this is intentional, prefix it with an underscore: `_tx`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> examples/ddl_runtime_example.rs:34:31
[INFO] [stdout]    |
[INFO] [stdout] 34 |         init_global_allocator(MEMORY_BUFFER.as_mut_ptr(), MEMORY_BUFFER.len())
[INFO] [stdout]    |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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]   --> examples/ddl_runtime_example.rs:34:59
[INFO] [stdout]    |
[INFO] [stdout] 34 |         init_global_allocator(MEMORY_BUFFER.as_mut_ptr(), MEMORY_BUFFER.len())
[INFO] [stdout]    |                                                           ^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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/dynamic_ddl_test.rs:16:27
[INFO] [stdout]    |
[INFO] [stdout] 16 |         memory_allocator: &mut DEFAULT_ALLOCATOR,
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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] 16 |         memory_allocator: &raw mut DEFAULT_ALLOCATOR,
[INFO] [stdout]    |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> tests/dynamic_ddl_test.rs:137:13
[INFO] [stdout]     |
[INFO] [stdout] 137 |             DB_MEMORY.as_mut_ptr(),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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/dynamic_ddl_test.rs:138:13
[INFO] [stdout]     |
[INFO] [stdout] 138 |             DB_MEMORY.len()
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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/dynamic_ddl_test.rs:189:13
[INFO] [stdout]     |
[INFO] [stdout] 189 |             DB_MEMORY.as_mut_ptr(),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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/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] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> tests/dynamic_ddl_test.rs:190:13
[INFO] [stdout]     |
[INFO] [stdout] 190 |             DB_MEMORY.len()
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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/dynamic_ddl_test.rs:273:13
[INFO] [stdout]     |
[INFO] [stdout] 273 |             DB_MEMORY.as_mut_ptr(),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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/dynamic_ddl_test.rs:274:13
[INFO] [stdout]     |
[INFO] [stdout] 274 |             DB_MEMORY.len()
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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: unused `Result` that must be used
[INFO] [stdout]   --> examples/sql_query.rs:45:9
[INFO] [stdout]    |
[INFO] [stdout] 45 | /         memory::allocator::init_global_allocator(
[INFO] [stdout] 46 | |             DB_MEMORY.as_mut_ptr(),
[INFO] [stdout] 47 | |             DB_MEMORY.len()
[INFO] [stdout] 48 | |         );
[INFO] [stdout]    | |_________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 45 |         let _ = memory::allocator::init_global_allocator(
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> examples/sql_query.rs:46:13
[INFO] [stdout]    |
[INFO] [stdout] 46 |             DB_MEMORY.as_mut_ptr(),
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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]   --> examples/sql_query.rs:47:13
[INFO] [stdout]    |
[INFO] [stdout] 47 |             DB_MEMORY.len()
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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/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 <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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: constant `RECORD_SIZE` is never used
[INFO] [stdout]   --> examples/low_power_mode.rs:45:7
[INFO] [stdout]    |
[INFO] [stdout] 45 | const RECORD_SIZE: usize = 4 + 32 + 8 + 8;
[INFO] [stdout]    |       ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TABLE_DATA_SIZE` is never used
[INFO] [stdout]   --> examples/low_power_mode.rs:46:7
[INFO] [stdout]    |
[INFO] [stdout] 46 | const TABLE_DATA_SIZE: usize = RECORD_SIZE * TEST_TABLE.max_records;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `STATUS_ARRAY_SIZE` is never used
[INFO] [stdout]   --> examples/low_power_mode.rs:47:7
[INFO] [stdout]    |
[INFO] [stdout] 47 | const STATUS_ARRAY_SIZE: usize = core::mem::size_of::<RecordHeader>() * TEST_TABLE.max_records;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FREE_SLOTS_SIZE` is never used
[INFO] [stdout]   --> examples/low_power_mode.rs:48:7
[INFO] [stdout]    |
[INFO] [stdout] 48 | const FREE_SLOTS_SIZE: usize = core::mem::size_of::<usize>() * TEST_TABLE.max_records;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TABLE_MEM_SIZE` is never used
[INFO] [stdout]   --> examples/low_power_mode.rs:49:7
[INFO] [stdout]    |
[INFO] [stdout] 49 | const TABLE_MEM_SIZE: usize = TABLE_DATA_SIZE + STATUS_ARRAY_SIZE + FREE_SLOTS_SIZE;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> examples/low_power_mode.rs:57:13
[INFO] [stdout]    |
[INFO] [stdout] 57 |             DB_MEMORY.as_mut_ptr(),
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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: 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: creating a shared reference to mutable static
[INFO] [stdout]   --> examples/low_power_mode.rs:58:13
[INFO] [stdout]    |
[INFO] [stdout] 58 |             DB_MEMORY.len()
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> tests/large_table_test.rs:248:9
[INFO] [stdout]     |
[INFO] [stdout] 248 |         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] 248 -         drop(table); // 释放表的可变引用
[INFO] [stdout] 248 +         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:286:9
[INFO] [stdout]     |
[INFO] [stdout] 286 |         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] 286 -         drop(table);
[INFO] [stdout] 286 +         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:317:9
[INFO] [stdout]     |
[INFO] [stdout] 317 |         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] 317 -         drop(table);
[INFO] [stdout] 317 +         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:372:9
[INFO] [stdout]     |
[INFO] [stdout] 372 |         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] 372 -         drop(table);
[INFO] [stdout] 372 +         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:402:9
[INFO] [stdout]     |
[INFO] [stdout] 402 |         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] 402 -         drop(table);
[INFO] [stdout] 402 +         let _ = table;
[INFO] [stdout]     |
[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 `Result` that must be used
[INFO] [stdout]   --> examples/ha_example.rs:46:9
[INFO] [stdout]    |
[INFO] [stdout] 46 | /         memory::allocator::init_global_allocator(
[INFO] [stdout] 47 | |             DB_MEMORY.as_mut_ptr(),
[INFO] [stdout] 48 | |             DB_MEMORY.len()
[INFO] [stdout] 49 | |         );
[INFO] [stdout]    | |_________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 46 |         let _ = memory::allocator::init_global_allocator(
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> examples/ha_example.rs:47:13
[INFO] [stdout]    |
[INFO] [stdout] 47 |             DB_MEMORY.as_mut_ptr(),
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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]   --> examples/ha_example.rs:48:13
[INFO] [stdout]    |
[INFO] [stdout] 48 |             DB_MEMORY.len()
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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: the type `Transaction` does not permit being left uninitialized
[INFO] [stdout]   --> examples/ha_example.rs:59:55
[INFO] [stdout]    |
[INFO] [stdout] 59 |         let mut tx_buffer: transaction::Transaction = core::mem::MaybeUninit::uninit().assume_init();
[INFO] [stdout]    |                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                                       |
[INFO] [stdout]    |                                                       this code causes undefined behavior when executed
[INFO] [stdout]    |                                                       help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]    |
[INFO] [stdout]    = note: integers must be initialized
[INFO] [stdout]    = note: `#[warn(invalid_value)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> examples/ha_example.rs:129:9
[INFO] [stdout]     |
[INFO] [stdout] 129 | /         memory::allocator::init_global_allocator(
[INFO] [stdout] 130 | |             DB_MEMORY.as_mut_ptr(),
[INFO] [stdout] 131 | |             DB_MEMORY.len()
[INFO] [stdout] 132 | |         );
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 129 |         let _ = memory::allocator::init_global_allocator(
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> examples/ha_example.rs:130:13
[INFO] [stdout]     |
[INFO] [stdout] 130 |             DB_MEMORY.as_mut_ptr(),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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]    --> examples/ha_example.rs:131:13
[INFO] [stdout]     |
[INFO] [stdout] 131 |             DB_MEMORY.len()
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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: 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 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: creating a mutable reference to mutable static
[INFO] [stdout]    --> examples/incremental_snapshot.rs:202:13
[INFO] [stdout]     |
[INFO] [stdout] 202 |             DB_MEMORY.as_mut_ptr(),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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]    --> examples/incremental_snapshot.rs:203:13
[INFO] [stdout]     |
[INFO] [stdout] 203 |             DB_MEMORY.len()
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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: unused `Result` that must be used
[INFO] [stdout]    --> examples/incremental_snapshot.rs:243:13
[INFO] [stdout]     |
[INFO] [stdout] 243 |             table.set_field(record.0.as_mut_ptr(), 2, &value_value);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 243 |             let _ = table.set_field(record.0.as_mut_ptr(), 2, &value_value);
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> tests/ha_test.rs:101:5
[INFO] [stdout]     |
[INFO] [stdout] 101 |     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: `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: unused `Result` that must be used
[INFO] [stdout]   --> examples/basic_usage.rs:36:9
[INFO] [stdout]    |
[INFO] [stdout] 36 | /         memory::allocator::init_global_allocator(
[INFO] [stdout] 37 | |             DB_MEMORY.as_mut_ptr(),
[INFO] [stdout] 38 | |             DB_MEMORY.len()
[INFO] [stdout] 39 | |         );
[INFO] [stdout]    | |_________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 36 |         let _ = memory::allocator::init_global_allocator(
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> examples/basic_usage.rs:37:13
[INFO] [stdout]    |
[INFO] [stdout] 37 |             DB_MEMORY.as_mut_ptr(),
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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]   --> examples/basic_usage.rs:38:13
[INFO] [stdout]    |
[INFO] [stdout] 38 |             DB_MEMORY.len()
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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: the type `Transaction` does not permit being left uninitialized
[INFO] [stdout]    --> examples/basic_usage.rs:166:55
[INFO] [stdout]     |
[INFO] [stdout] 166 |         let mut tx_buffer: transaction::Transaction = core::mem::MaybeUninit::uninit().assume_init();
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       this code causes undefined behavior when executed
[INFO] [stdout]     |                                                       help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout]     = note: integers must be initialized
[INFO] [stdout]     = note: `#[warn(invalid_value)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> examples/test_auto_increment.rs:12:13
[INFO] [stdout]    |
[INFO] [stdout] 12 |             DB_MEMORY.as_mut_ptr(),
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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]   --> examples/test_auto_increment.rs:13:13
[INFO] [stdout]    |
[INFO] [stdout] 13 |             DB_MEMORY.len()
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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: struct `Database` is never constructed
[INFO] [stdout]   --> examples/ddl_full_example.rs:25:8
[INFO] [stdout]    |
[INFO] [stdout] 25 | struct Database;
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `core::ptr::NonNull`
[INFO] [stdout]  --> examples/multiple_tables.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use core::ptr::NonNull;
[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: `alloc::string::String`
[INFO] [stdout]  --> examples/multiple_tables.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use alloc::string::String;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> examples/ddl_full_example.rs:42:9
[INFO] [stdout]    |
[INFO] [stdout] 42 | /         memory::allocator::init_global_allocator(
[INFO] [stdout] 43 | |             DB_MEMORY.as_mut_ptr(),
[INFO] [stdout] 44 | |             DB_MEMORY.len()
[INFO] [stdout] 45 | |         );
[INFO] [stdout]    | |_________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 42 |         let _ = memory::allocator::init_global_allocator(
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> examples/ddl_full_example.rs:43:13
[INFO] [stdout]    |
[INFO] [stdout] 43 |             DB_MEMORY.as_mut_ptr(),
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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]   --> examples/ddl_full_example.rs:44:13
[INFO] [stdout]    |
[INFO] [stdout] 44 |             DB_MEMORY.len()
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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: static variable `users` should have an upper case name
[INFO] [stdout]   --> examples/multiple_tables.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | static users: remdb::types::TableDef = remdb::types::TableDef {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_upper_case_globals)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] help: convert the identifier to upper case
[INFO] [stdout]    |
[INFO] [stdout] 12 - static users: remdb::types::TableDef = remdb::types::TableDef {
[INFO] [stdout] 12 + static USERS: remdb::types::TableDef = remdb::types::TableDef {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `orders` should have an upper case name
[INFO] [stdout]   --> examples/multiple_tables.rs:91:8
[INFO] [stdout]    |
[INFO] [stdout] 91 | static orders: remdb::types::TableDef = remdb::types::TableDef {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: convert the identifier to upper case
[INFO] [stdout]    |
[INFO] [stdout] 91 - static orders: remdb::types::TableDef = remdb::types::TableDef {
[INFO] [stdout] 91 + static ORDERS: remdb::types::TableDef = remdb::types::TableDef {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static variable `products` should have an upper case name
[INFO] [stdout]    --> examples/multiple_tables.rs:181:8
[INFO] [stdout]     |
[INFO] [stdout] 181 | static products: remdb::types::TableDef = remdb::types::TableDef {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: convert the identifier to upper case
[INFO] [stdout]     |
[INFO] [stdout] 181 - static products: remdb::types::TableDef = remdb::types::TableDef {
[INFO] [stdout] 181 + static PRODUCTS: remdb::types::TableDef = remdb::types::TableDef {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ptr::NonNull`
[INFO] [stdout]  --> tests/transaction_test.rs:1:33
[INFO] [stdout]   |
[INFO] [stdout] 1 | use core::mem::MaybeUninit; use std::ptr::NonNull; extern crate alloc; use alloc::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 `Result` that must be used
[INFO] [stdout]    --> examples/multiple_tables.rs:271:9
[INFO] [stdout]     |
[INFO] [stdout] 271 | /         memory::allocator::init_global_allocator(
[INFO] [stdout] 272 | |             DB_MEMORY.as_mut_ptr(),
[INFO] [stdout] 273 | |             DB_MEMORY.len()
[INFO] [stdout] 274 | |         );
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 271 |         let _ = memory::allocator::init_global_allocator(
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> examples/multiple_tables.rs:272:13
[INFO] [stdout]     |
[INFO] [stdout] 272 |             DB_MEMORY.as_mut_ptr(),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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: unused import: `alloc::sync::Arc`
[INFO] [stdout]  --> tests/transaction_test.rs:1:76
[INFO] [stdout]   |
[INFO] [stdout] 1 | use core::mem::MaybeUninit; use std::ptr::NonNull; extern crate alloc; use alloc::sync::Arc;
[INFO] [stdout]   |                                                                            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]    --> examples/multiple_tables.rs:273:13
[INFO] [stdout]     |
[INFO] [stdout] 273 |             DB_MEMORY.len()
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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: unused import: `std::fs::File`
[INFO] [stdout]    --> tests/test_snapshot_gen.rs:137:13
[INFO] [stdout]     |
[INFO] [stdout] 137 |         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] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> tests/transaction_test.rs:253:13
[INFO] [stdout]     |
[INFO] [stdout] 253 |         let mut table_mut = db.get_table_mut(0).unwrap();
[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: unused variable: `tx`
[INFO] [stdout]    --> tests/transaction_test.rs:228:13
[INFO] [stdout]     |
[INFO] [stdout] 228 |         let tx = db.begin_transaction(
[INFO] [stdout]     |             ^^ help: if this is intentional, prefix it with an underscore: `_tx`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `record_id`
[INFO] [stdout]    --> tests/transaction_test.rs:254:13
[INFO] [stdout]     |
[INFO] [stdout] 254 |         let record_id = table_mut.insert(record_data.as_ptr()).unwrap();
[INFO] [stdout]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_record_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> tests/transaction_test.rs:348:13
[INFO] [stdout]     |
[INFO] [stdout] 348 |         let mut table_mut = db.get_table_mut(0).unwrap();
[INFO] [stdout]     |             ----^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tx`
[INFO] [stdout]    --> tests/transaction_test.rs:323:13
[INFO] [stdout]     |
[INFO] [stdout] 323 |         let tx = db.begin_transaction(
[INFO] [stdout]     |             ^^ help: if this is intentional, prefix it with an underscore: `_tx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> tests/transaction_test.rs:460:13
[INFO] [stdout]     |
[INFO] [stdout] 460 |         let mut table_mut = db.get_table_mut(0).unwrap();
[INFO] [stdout]     |             ----^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tx`
[INFO] [stdout]    --> tests/transaction_test.rs:436:13
[INFO] [stdout]     |
[INFO] [stdout] 436 |         let tx = db.begin_transaction(
[INFO] [stdout]     |             ^^ help: if this is intentional, prefix it with an underscore: `_tx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> tests/transaction_test.rs:564:13
[INFO] [stdout]     |
[INFO] [stdout] 564 |         let mut table_mut = db.get_table_mut(0).unwrap();
[INFO] [stdout]     |             ----^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tx`
[INFO] [stdout]    --> tests/transaction_test.rs:555:13
[INFO] [stdout]     |
[INFO] [stdout] 555 |         let tx = db.begin_transaction(
[INFO] [stdout]     |             ^^ help: if this is intentional, prefix it with an underscore: `_tx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `TABLE_FREE_SLOTS_BUFFER` is never used
[INFO] [stdout]    --> tests/transaction_test.rs:170:12
[INFO] [stdout]     |
[INFO] [stdout] 170 | 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/transaction_test.rs:147:9
[INFO] [stdout]     |
[INFO] [stdout] 147 |         &mut DEFAULT_ALLOCATOR
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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] 147 |         &raw mut DEFAULT_ALLOCATOR
[INFO] [stdout]     |          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> tests/transaction_test.rs:189:9
[INFO] [stdout]     |
[INFO] [stdout] 189 |         TX_MANAGER.reset();
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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/transaction_test.rs:195:9
[INFO] [stdout]     |
[INFO] [stdout] 195 |         TABLE_DATA_BUFFER.fill(0);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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/transaction_test.rs:284:9
[INFO] [stdout]     |
[INFO] [stdout] 284 |         TX_MANAGER.reset();
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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/transaction_test.rs:290:9
[INFO] [stdout]     |
[INFO] [stdout] 290 |         TABLE_DATA_BUFFER.fill(0);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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/transaction_test.rs:379:9
[INFO] [stdout]     |
[INFO] [stdout] 379 |         TX_MANAGER.reset();
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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/transaction_test.rs:385:9
[INFO] [stdout]     |
[INFO] [stdout] 385 |         TABLE_DATA_BUFFER.fill(0);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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/transaction_test.rs:498:9
[INFO] [stdout]     |
[INFO] [stdout] 498 |         TX_MANAGER.reset();
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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/transaction_test.rs:504:9
[INFO] [stdout]     |
[INFO] [stdout] 504 |         TABLE_DATA_BUFFER.fill(0);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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: variable does not need to be mutable
[INFO] [stdout]    --> tests/test_snapshot_gen.rs:285:13
[INFO] [stdout]     |
[INFO] [stdout] 285 |         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:73:12
[INFO] [stdout]    |
[INFO] [stdout] 73 | 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 <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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:265:9
[INFO] [stdout]     |
[INFO] [stdout] 265 |         transaction::TX_MANAGER.reset();
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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:271:9
[INFO] [stdout]     |
[INFO] [stdout] 271 |         TABLE_DATA_BUFFER.fill(0);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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: `core::ptr::NonNull`
[INFO] [stdout]  --> examples/describe_table.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use core::ptr::NonNull;
[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::types::RecordHeader`
[INFO] [stdout]  --> examples/generate_snapshot.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use remdb::types::RecordHeader;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> examples/generate_snapshot.rs:206:13
[INFO] [stdout]     |
[INFO] [stdout] 206 |             DB_MEMORY.as_mut_ptr(),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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]    --> examples/generate_snapshot.rs:207:13
[INFO] [stdout]     |
[INFO] [stdout] 207 |             DB_MEMORY.len()
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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: unused `Result` that must be used
[INFO] [stdout]   --> examples/describe_table.rs:34:9
[INFO] [stdout]    |
[INFO] [stdout] 34 | /         memory::allocator::init_global_allocator(
[INFO] [stdout] 35 | |             DB_MEMORY.as_mut_ptr(),
[INFO] [stdout] 36 | |             DB_MEMORY.len()
[INFO] [stdout] 37 | |         );
[INFO] [stdout]    | |_________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 34 |         let _ = memory::allocator::init_global_allocator(
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> examples/describe_table.rs:35:13
[INFO] [stdout]    |
[INFO] [stdout] 35 |             DB_MEMORY.as_mut_ptr(),
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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]   --> examples/describe_table.rs:36:13
[INFO] [stdout]    |
[INFO] [stdout] 36 |             DB_MEMORY.len()
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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: unused import: `core::ptr::NonNull`
[INFO] [stdout]  --> tests/time_series_test.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use core::ptr::NonNull;
[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: `alloc::string::String`
[INFO] [stdout]  --> examples/export_example.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use alloc::string::String;
[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: `alloc::vec::Vec`
[INFO] [stdout]  --> examples/export_example.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use alloc::vec::Vec;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `DB_MEMORY` is never used
[INFO] [stdout]   --> examples/export_example.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | static mut DB_MEMORY: [u8; 65536] = [0u8; 65536];
[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/time_series_test.rs:38:28
[INFO] [stdout]    |
[INFO] [stdout] 38 |     core::ptr::write_bytes(DB_MEMORY.as_mut_ptr(), 0, DB_MEMORY.len());
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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/time_series_test.rs:38:55
[INFO] [stdout]    |
[INFO] [stdout] 38 |     core::ptr::write_bytes(DB_MEMORY.as_mut_ptr(), 0, DB_MEMORY.len());
[INFO] [stdout]    |                                                       ^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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/time_series_test.rs:42:9
[INFO] [stdout]    |
[INFO] [stdout] 42 |         DB_MEMORY.as_mut_ptr(),
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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/time_series_test.rs:43:9
[INFO] [stdout]    |
[INFO] [stdout] 43 |         DB_MEMORY.len()
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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: unused variable: `size`
[INFO] [stdout]   --> src/types.rs:57:31
[INFO] [stdout]    |
[INFO] [stdout] 57 |     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 import: `core::ptr::NonNull`
[INFO] [stdout]  --> examples/time_series.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use core::ptr::NonNull;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (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:317:27
[INFO] [stdout]     |
[INFO] [stdout] 317 |         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: `sum`
[INFO] [stdout]    --> examples/time_series.rs:265:32
[INFO] [stdout]     |
[INFO] [stdout] 265 |         for (i, (window_start, sum, avg, min, max, count)) in window_aggregates.iter().enumerate() {
[INFO] [stdout]     |                                ^^^ help: if this is intentional, prefix it with an underscore: `_sum`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> examples/time_series.rs:37:13
[INFO] [stdout]    |
[INFO] [stdout] 37 |             DB_MEMORY.as_mut_ptr(),
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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]   --> examples/time_series.rs:38:13
[INFO] [stdout]    |
[INFO] [stdout] 38 |             DB_MEMORY.len()
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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: unused variable: `last`
[INFO] [stdout]     --> src/table.rs:1595:44
[INFO] [stdout]      |
[INFO] [stdout] 1595 |         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: unused import: `Result`
[INFO] [stdout]  --> tests/pubsub_test.rs:8:56
[INFO] [stdout]   |
[INFO] [stdout] 8 |     use remdb::pubsub::{PubSub, PubSubConfig, UdpMode, 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: 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: struct `Database` is never constructed
[INFO] [stdout]   --> examples/ddl_example.rs:13:8
[INFO] [stdout]    |
[INFO] [stdout] 13 | struct Database;
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[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:744:9
[INFO] [stdout]     |
[INFO] [stdout] 744 |         unsafe {
[INFO] [stdout]     |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `id`
[INFO] [stdout]   --> src/sql/query_executor.rs:86:45
[INFO] [stdout]    |
[INFO] [stdout] 86 |         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: variable does not need to be mutable
[INFO] [stdout]   --> examples/varchar_example.rs:41:13
[INFO] [stdout]    |
[INFO] [stdout] 41 |         let mut db = init_global_db(&CONFIG).expect("Failed to initialize database");
[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: creating a mutable reference to mutable static
[INFO] [stdout]   --> examples/varchar_example.rs:12:13
[INFO] [stdout]    |
[INFO] [stdout] 12 |             DB_MEMORY.as_mut_ptr(),
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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]   --> examples/varchar_example.rs:13:13
[INFO] [stdout]    |
[INFO] [stdout] 13 |             DB_MEMORY.len()
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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/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] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> tests/wal_test.rs:164:5
[INFO] [stdout]     |
[INFO] [stdout] 164 |     unsafe {
[INFO] [stdout]     |     ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> tests/wal_test.rs:223:5
[INFO] [stdout]     |
[INFO] [stdout] 223 |     unsafe {
[INFO] [stdout]     |     ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> tests/wal_test.rs:289:5
[INFO] [stdout]     |
[INFO] [stdout] 289 |     unsafe {
[INFO] [stdout]     |     ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> tests/wal_test.rs:356:5
[INFO] [stdout]     |
[INFO] [stdout] 356 |     unsafe {
[INFO] [stdout]     |     ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> tests/wal_test.rs:399:5
[INFO] [stdout]     |
[INFO] [stdout] 399 |     unsafe {
[INFO] [stdout]     |     ^^^^^^ unnecessary `unsafe` block
[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: `e`
[INFO] [stdout]    --> src/pubsub/mod.rs:307:20
[INFO] [stdout]     |
[INFO] [stdout] 307 |         if let Err(e) = self.subscribers.cleanup_inactive(heartbeat_timeout) {
[INFO] [stdout]     |                    ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]   --> src/ha/replication.rs:91:30
[INFO] [stdout]    |
[INFO] [stdout] 91 |     fn handle_wal_log(&self, data: &[u8]) {
[INFO] [stdout]    |                              ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[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: `data`
[INFO] [stdout]    --> src/ha/heartbeat.rs:104:32
[INFO] [stdout]     |
[INFO] [stdout] 104 |     fn handle_heartbeat(&self, data: &[u8]) {
[INFO] [stdout]     |                                ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]   --> src/lib.rs:94:9
[INFO] [stdout]    |
[INFO] [stdout] 94 |         unsafe {
[INFO] [stdout]    |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/lib.rs:95:24
[INFO] [stdout]    |
[INFO] [stdout] 95 |             if let Err(e) = crate::ha::shutdown() {
[INFO] [stdout]    |                        ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/lib.rs:345:9
[INFO] [stdout]     |
[INFO] [stdout] 345 |         unsafe {
[INFO] [stdout]     |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/lib.rs:346:24
[INFO] [stdout]     |
[INFO] [stdout] 346 |             if let Err(e) = crate::ha::init(self.config) {
[INFO] [stdout]     |                        ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> tests/export_test.rs:240:5
[INFO] [stdout]     |
[INFO] [stdout] 240 |     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: creating a mutable reference to mutable static
[INFO] [stdout]   --> tests/export_test.rs:42:9
[INFO] [stdout]    |
[INFO] [stdout] 42 |         crate::transaction::TX_MANAGER.clear_log_manager();
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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]   --> tests/export_test.rs:51:57
[INFO] [stdout]    |
[INFO] [stdout] 51 |         crate::memory::allocator::init_global_allocator(DB_MEMORY.as_mut_ptr(), DB_MEMORY.len()).unwrap();
[INFO] [stdout]    |                                                         ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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/export_test.rs:51:81
[INFO] [stdout]    |
[INFO] [stdout] 51 |         crate::memory::allocator::init_global_allocator(DB_MEMORY.as_mut_ptr(), DB_MEMORY.len()).unwrap();
[INFO] [stdout]    |                                                                                 ^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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/export_test.rs:95:9
[INFO] [stdout]    |
[INFO] [stdout] 95 |         crate::transaction::TX_MANAGER.clear_log_manager();
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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/export_test.rs:104:57
[INFO] [stdout]     |
[INFO] [stdout] 104 |         crate::memory::allocator::init_global_allocator(DB_MEMORY.as_mut_ptr(), DB_MEMORY.len()).unwrap();
[INFO] [stdout]     |                                                         ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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/export_test.rs:104:81
[INFO] [stdout]     |
[INFO] [stdout] 104 |         crate::memory::allocator::init_global_allocator(DB_MEMORY.as_mut_ptr(), DB_MEMORY.len()).unwrap();
[INFO] [stdout]     |                                                                                 ^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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/export_test.rs:196:9
[INFO] [stdout]     |
[INFO] [stdout] 196 |         crate::transaction::TX_MANAGER.clear_log_manager();
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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/export_test.rs:205:57
[INFO] [stdout]     |
[INFO] [stdout] 205 |         crate::memory::allocator::init_global_allocator(DB_MEMORY.as_mut_ptr(), DB_MEMORY.len()).unwrap();
[INFO] [stdout]     |                                                         ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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/export_test.rs:205:81
[INFO] [stdout]     |
[INFO] [stdout] 205 |         crate::memory::allocator::init_global_allocator(DB_MEMORY.as_mut_ptr(), DB_MEMORY.len()).unwrap();
[INFO] [stdout]     |                                                                                 ^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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: method `get_field_by_offset` is never used
[INFO] [stdout]    --> src/table.rs:269:15
[INFO] [stdout]     |
[INFO] [stdout]  51 | impl MemoryTable {
[INFO] [stdout]     | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 269 |     unsafe fn get_field_by_offset(&self, record_data: *const u8, offset: usize, data_type: DataType, size: usize) -> Result<Value>
[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<TableDef>,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] ...
[INFO] [stdout] 131 |     items: NonNull<PrimaryIndexItem>,
[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<TableDef>,
[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<BTreeNode>) {
[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<TTreeNode>) {
[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:166:5
[INFO] [stdout]     |
[INFO] [stdout] 142 | pub struct LogManager {
[INFO] [stdout]     |            ---------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 166 |     log_file_size_limit: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 167 |     /// 日志分段大小
[INFO] [stdout] 168 |     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:985:8
[INFO] [stdout]     |
[INFO] [stdout] 193 | impl SqlParser {
[INFO] [stdout]     | -------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 985 |     fn is_eof(&self) -> bool {
[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<String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `values_to_string` is never used
[INFO] [stdout]    --> src/sql/result_set.rs:231:8
[INFO] [stdout]     |
[INFO] [stdout] 231 | 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:243:13
[INFO] [stdout]     |
[INFO] [stdout] 243 |             crate::transaction::TX_MANAGER.set_low_power_mode(true);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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:273:13
[INFO] [stdout]     |
[INFO] [stdout] 273 |             crate::transaction::TX_MANAGER.set_low_power_mode(false);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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:298:9
[INFO] [stdout]     |
[INFO] [stdout] 298 |         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 <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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:303:9
[INFO] [stdout]     |
[INFO] [stdout] 303 |         crate::transaction::TX_MANAGER.commit()
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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:308:9
[INFO] [stdout]     |
[INFO] [stdout] 308 |         crate::transaction::TX_MANAGER.rollback(self)
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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:335:25
[INFO] [stdout]     |
[INFO] [stdout] 335 |                         crate::transaction::TX_MANAGER.set_log_manager(log_manager);
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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:1410:12
[INFO] [stdout]      |
[INFO] [stdout] 1410 |         Ok(DB_INSTANCE.as_mut().unwrap())
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]      |
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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:1417:9
[INFO] [stdout]      |
[INFO] [stdout] 1417 |         DB_INSTANCE.as_mut()
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]      |
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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:1212:5
[INFO] [stdout]      |
[INFO] [stdout] 1212 |     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 <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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:1217:5
[INFO] [stdout]      |
[INFO] [stdout] 1217 |     TX_MANAGER.commit()
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]      |
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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:1222:5
[INFO] [stdout]      |
[INFO] [stdout] 1222 |     TX_MANAGER.rollback(db)
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]      |
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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:1227:14
[INFO] [stdout]      |
[INFO] [stdout] 1227 |     unsafe { TX_MANAGER.get_current_tx() }
[INFO] [stdout]      |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]      |
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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:1232:14
[INFO] [stdout]      |
[INFO] [stdout] 1232 |     unsafe { TX_MANAGER.has_active_tx() }
[INFO] [stdout]      |              ^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]      |
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/sql/result_set.rs:80:17
[INFO] [stdout]    |
[INFO] [stdout] 80 |     pub fn iter(&self) -> ResultRowIter {
[INFO] [stdout]    |                 ^^^^^     ^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 80 |     pub fn iter(&self) -> ResultRowIter<'_> {
[INFO] [stdout]    |                                        ++++
[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 <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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 <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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 <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[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]     Finished `test` profile [optimized + debuginfo] target(s) in 27.27s
[INFO] running `Command { std: "docker" "inspect" "db117ee36eedf7dba1e37c8ce4317371489825b3af417ef6bb9028bfdd4a9ff2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "db117ee36eedf7dba1e37c8ce4317371489825b3af417ef6bb9028bfdd4a9ff2", kill_on_drop: false }`
[INFO] [stdout] db117ee36eedf7dba1e37c8ce4317371489825b3af417ef6bb9028bfdd4a9ff2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+db823df02fd0c2cf67b43025ac3fef3f2d743245" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] ca9feb3d5f7c5e8f3bf000fae606b02d503b0598e09b9ef9c0e7a970c5f39c24
[INFO] running `Command { std: "docker" "start" "-a" "ca9feb3d5f7c5e8f3bf000fae606b02d503b0598e09b9ef9c0e7a970c5f39c24", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `DataType as CrateDataType`
[INFO] [stderr]  --> src/table.rs:2:97
[INFO] [stderr]   |
[INFO] [stderr] 2 | use crate::{types::{RecordHeader, RecordStatus, TableDef, Value, Result, RemDbError, DataType}, DataType as CrateDataType};
[INFO] [stderr]   |                                                                                                 ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `core::time::Duration`
[INFO] [stderr]   --> src/platform/posix.rs:13:13
[INFO] [stderr]    |
[INFO] [stderr] 13 |         use core::time::Duration;
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `core::time::Duration`
[INFO] [stderr]   --> src/platform/posix.rs:24:13
[INFO] [stderr]    |
[INFO] [stderr] 24 |         use core::time::Duration;
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Ipv6Addr`
[INFO] [stderr]   --> src/pubsub/udp.rs:75:69
[INFO] [stderr]    |
[INFO] [stderr] 75 |     use std::net::{UdpSocket as StdUdpSocket, SocketAddr, Ipv4Addr, Ipv6Addr};
[INFO] [stderr]    |                                                                     ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `super::PubSubError`
[INFO] [stderr]  --> src/pubsub/publisher.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | use super::PubSubError;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `FrameType`
[INFO] [stderr]  --> src/pubsub/publisher.rs:5:38
[INFO] [stderr]   |
[INFO] [stderr] 5 | use super::protocol::{ProtocolFrame, FrameType};
[INFO] [stderr]   |                                      ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `alloc::vec::Vec`
[INFO] [stderr]   --> src/pubsub/mod.rs:10:5
[INFO] [stderr]    |
[INFO] [stderr] 10 | use alloc::vec::Vec;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `HAError`
[INFO] [stderr]  --> src/ha/manager.rs:4:25
[INFO] [stderr]   |
[INFO] [stderr] 4 | use crate::ha::{Result, HAError};
[INFO] [stderr]   |                         ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `PubSubError`
[INFO] [stderr]  --> src/ha/replication.rs:7:44
[INFO] [stderr]   |
[INFO] [stderr] 7 | use crate::pubsub::{PubSubConfig, UdpMode, PubSubError};
[INFO] [stderr]   |                                            ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `PubSubError`
[INFO] [stderr]  --> src/ha/heartbeat.rs:5:44
[INFO] [stderr]   |
[INFO] [stderr] 5 | use crate::pubsub::{PubSubConfig, UdpMode, PubSubError};
[INFO] [stderr]   |                                            ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `HAError`
[INFO] [stderr]  --> src/ha/role.rs:4:25
[INFO] [stderr]   |
[INFO] [stderr] 4 | use crate::ha::{Result, HAError};
[INFO] [stderr]   |                         ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `PubSubError`
[INFO] [stderr]  --> src/ha/role.rs:6:44
[INFO] [stderr]   |
[INFO] [stderr] 6 | use crate::pubsub::{PubSubConfig, UdpMode, PubSubError};
[INFO] [stderr]   |                                            ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `alloc::vec::Vec`
[INFO] [stderr]  --> src/ha/mod.rs:9:5
[INFO] [stderr]   |
[INFO] [stderr] 9 | use alloc::vec::Vec;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `size`
[INFO] [stderr]   --> src/types.rs:57:31
[INFO] [stderr]    |
[INFO] [stderr] 57 |     pub fn to_sql_type(&self, size: usize) -> &'static str {
[INFO] [stderr]    |                               ^^^^ help: if this is intentional, prefix it with an underscore: `_size`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary `unsafe` block
[INFO] [stderr]   --> src/table.rs:40:9
[INFO] [stderr]    |
[INFO] [stderr] 40 |         unsafe {
[INFO] [stderr]    |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `slot_id` is never read
[INFO] [stderr]    --> src/table.rs:317:27
[INFO] [stderr]     |
[INFO] [stderr] 317 |         let mut slot_id = 0;
[INFO] [stderr]     |                           ^
[INFO] [stderr]     |
[INFO] [stderr]     = help: maybe it is overwritten before being read?
[INFO] [stderr]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `last`
[INFO] [stderr]     --> src/table.rs:1595:44
[INFO] [stderr]      |
[INFO] [stderr] 1595 |         for (window_start, (sum, min, max, last, count)) in window_aggregates {
[INFO] [stderr]      |                                            ^^^^ help: if this is intentional, prefix it with an underscore: `_last`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/index.rs:985:17
[INFO] [stderr]     |
[INFO] [stderr] 985 |             let mut node_mut = &mut *node_ptr;
[INFO] [stderr]     |                 ----^^^^^^^^
[INFO] [stderr]     |                 |
[INFO] [stderr]     |                 help: remove this `mut`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]     --> src/index.rs:1035:13
[INFO] [stderr]      |
[INFO] [stderr] 1035 |         let mut node_mut = &mut *node_ptr.as_ptr();
[INFO] [stderr]      |             ----^^^^^^^^
[INFO] [stderr]      |             |
[INFO] [stderr]      |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]     --> src/index.rs:1223:17
[INFO] [stderr]      |
[INFO] [stderr] 1223 |             let mut root = self.root.expect("Root node unexpectedly None");
[INFO] [stderr]      |                 ----^^^^
[INFO] [stderr]      |                 |
[INFO] [stderr]      |                 help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `key`
[INFO] [stderr]     --> src/index.rs:1544:37
[INFO] [stderr]      |
[INFO] [stderr] 1544 |     pub unsafe fn delete(&mut self, key: *const u8, key_size: usize) -> Result<()> {
[INFO] [stderr]      |                                     ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `key_size`
[INFO] [stderr]     --> src/index.rs:1544:53
[INFO] [stderr]      |
[INFO] [stderr] 1544 |     pub unsafe fn delete(&mut self, key: *const u8, key_size: usize) -> Result<()> {
[INFO] [stderr]      |                                                     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_key_size`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]     --> src/index.rs:1584:17
[INFO] [stderr]      |
[INFO] [stderr] 1584 |             let mut node_mut = &mut *node_ptr;
[INFO] [stderr]      |                 ----^^^^^^^^
[INFO] [stderr]      |                 |
[INFO] [stderr]      |                 help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]     --> src/index.rs:1632:13
[INFO] [stderr]      |
[INFO] [stderr] 1632 |         let mut node_mut = &mut *node_ptr.as_ptr();
[INFO] [stderr]      |             ----^^^^^^^^
[INFO] [stderr]      |             |
[INFO] [stderr]      |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `key`
[INFO] [stderr]     --> src/index.rs:2207:37
[INFO] [stderr]      |
[INFO] [stderr] 2207 |     pub unsafe fn delete(&mut self, key: *const u8, key_size: usize) -> Result<()> {
[INFO] [stderr]      |                                     ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `key_size`
[INFO] [stderr]     --> src/index.rs:2207:53
[INFO] [stderr]      |
[INFO] [stderr] 2207 |     pub unsafe fn delete(&mut self, key: *const u8, key_size: usize) -> Result<()> {
[INFO] [stderr]      |                                                     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_key_size`
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary `unsafe` block
[INFO] [stderr]    --> src/transaction.rs:744:9
[INFO] [stderr]     |
[INFO] [stderr] 744 |         unsafe {
[INFO] [stderr]     |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `id`
[INFO] [stderr]   --> src/sql/query_executor.rs:86:45
[INFO] [stderr]    |
[INFO] [stderr] 86 |         let iterate_result = table.iterate(|id, record_ptr| {
[INFO] [stderr]    |                                             ^^ help: if this is intentional, prefix it with an underscore: `_id`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `seq_num`
[INFO] [stderr]    --> src/pubsub/mod.rs:267:13
[INFO] [stderr]     |
[INFO] [stderr] 267 |         let seq_num = frame.seq_num();
[INFO] [stderr]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_seq_num`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `e`
[INFO] [stderr]    --> src/pubsub/mod.rs:274:20
[INFO] [stderr]     |
[INFO] [stderr] 274 |         if let Err(e) = self.subscribers.handle_data(topic_id, payload) {
[INFO] [stderr]     |                    ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `e`
[INFO] [stderr]    --> src/pubsub/mod.rs:307:20
[INFO] [stderr]     |
[INFO] [stderr] 307 |         if let Err(e) = self.subscribers.cleanup_inactive(heartbeat_timeout) {
[INFO] [stderr]     |                    ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `data`
[INFO] [stderr]   --> src/ha/replication.rs:91:30
[INFO] [stderr]    |
[INFO] [stderr] 91 |     fn handle_wal_log(&self, data: &[u8]) {
[INFO] [stderr]    |                              ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `last_log_index`
[INFO] [stderr]    --> src/ha/replication.rs:140:44
[INFO] [stderr]     |
[INFO] [stderr] 140 |     pub fn request_incremental_sync(&self, last_log_index: u32) -> Result<()> {
[INFO] [stderr]     |                                            ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_last_log_index`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `data`
[INFO] [stderr]    --> src/ha/heartbeat.rs:104:32
[INFO] [stderr]     |
[INFO] [stderr] 104 |     fn handle_heartbeat(&self, data: &[u8]) {
[INFO] [stderr]     |                                ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary `unsafe` block
[INFO] [stderr]   --> src/lib.rs:94:9
[INFO] [stderr]    |
[INFO] [stderr] 94 |         unsafe {
[INFO] [stderr]    |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `e`
[INFO] [stderr]   --> src/lib.rs:95:24
[INFO] [stderr]    |
[INFO] [stderr] 95 |             if let Err(e) = crate::ha::shutdown() {
[INFO] [stderr]    |                        ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary `unsafe` block
[INFO] [stderr]    --> src/lib.rs:345:9
[INFO] [stderr]     |
[INFO] [stderr] 345 |         unsafe {
[INFO] [stderr]     |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `e`
[INFO] [stderr]    --> src/lib.rs:346:24
[INFO] [stderr]     |
[INFO] [stderr] 346 |             if let Err(e) = crate::ha::init(self.config) {
[INFO] [stderr]     |                        ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stderr] 
[INFO] [stderr] warning: method `get_field_by_offset` is never used
[INFO] [stderr]    --> src/table.rs:269:15
[INFO] [stderr]     |
[INFO] [stderr]  51 | impl MemoryTable {
[INFO] [stderr]     | ---------------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 269 |     unsafe fn get_field_by_offset(&self, record_data: *const u8, offset: usize, data_type: DataType, size: usize) -> Result<Value>
[INFO] [stderr]     |               ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: fields `def` and `items` are never read
[INFO] [stderr]    --> src/index.rs:125:5
[INFO] [stderr]     |
[INFO] [stderr] 123 | pub struct PrimaryIndex {
[INFO] [stderr]     |            ------------ fields in this struct
[INFO] [stderr] 124 |     /// 表定义
[INFO] [stderr] 125 |     def: alloc::sync::Arc<TableDef>,
[INFO] [stderr]     |     ^^^
[INFO] [stderr] ...
[INFO] [stderr] 131 |     items: NonNull<PrimaryIndexItem>,
[INFO] [stderr]     |     ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `def` is never read
[INFO] [stderr]    --> src/index.rs:506:5
[INFO] [stderr]     |
[INFO] [stderr] 504 | pub struct SecondaryIndex {
[INFO] [stderr]     |            -------------- field in this struct
[INFO] [stderr] 505 |     /// 表定义
[INFO] [stderr] 506 |     def: alloc::sync::Arc<TableDef>,
[INFO] [stderr]     |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `free_node` is never used
[INFO] [stderr]     --> src/index.rs:1067:15
[INFO] [stderr]      |
[INFO] [stderr]  971 | impl BTreeIndex {
[INFO] [stderr]      | --------------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 1067 |     unsafe fn free_node(&mut self, node_ptr: NonNull<BTreeNode>) {
[INFO] [stderr]      |               ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `free_node` is never used
[INFO] [stderr]     --> src/index.rs:1663:15
[INFO] [stderr]      |
[INFO] [stderr] 1570 | impl TTreeIndex {
[INFO] [stderr]      | --------------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 1663 |     unsafe fn free_node(&mut self, node_ptr: NonNull<TTreeNode>) {
[INFO] [stderr]      |               ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `log_file_size_limit` and `log_segment_size` are never read
[INFO] [stderr]    --> src/transaction.rs:166:5
[INFO] [stderr]     |
[INFO] [stderr] 142 | pub struct LogManager {
[INFO] [stderr]     |            ---------- fields in this struct
[INFO] [stderr] ...
[INFO] [stderr] 166 |     log_file_size_limit: usize,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 167 |     /// 日志分段大小
[INFO] [stderr] 168 |     log_segment_size: usize,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `is_eof` is never used
[INFO] [stderr]    --> src/sql/query_parser.rs:985:8
[INFO] [stderr]     |
[INFO] [stderr] 193 | impl SqlParser {
[INFO] [stderr]     | -------------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 985 |     fn is_eof(&self) -> bool {
[INFO] [stderr]     |        ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `string_to_columns` is never used
[INFO] [stderr]    --> src/sql/result_set.rs:199:8
[INFO] [stderr]     |
[INFO] [stderr] 199 | pub fn string_to_columns(s: &str) -> Vec<String> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `values_to_string` is never used
[INFO] [stderr]    --> src/sql/result_set.rs:231:8
[INFO] [stderr]     |
[INFO] [stderr] 231 | pub fn values_to_string(values: &[TypedValue]) -> String {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `config` is never read
[INFO] [stderr]    --> src/pubsub/mod.rs:121:5
[INFO] [stderr]     |
[INFO] [stderr] 120 | pub struct PubSub {
[INFO] [stderr]     |            ------ field in this struct
[INFO] [stderr] 121 |     config: PubSubConfig,
[INFO] [stderr]     |     ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: methods `receive_loop`, `handle_received_data`, `handle_data_frame`, `handle_nack_frame`, and `handle_heartbeat_frame` are never used
[INFO] [stderr]    --> src/pubsub/mod.rs:186:8
[INFO] [stderr]     |
[INFO] [stderr] 128 | impl PubSub {
[INFO] [stderr]     | ----------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 186 |     fn receive_loop(&mut self) {
[INFO] [stderr]     |        ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 228 |     fn handle_received_data(&mut self, data: &[u8]) {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 264 |     fn handle_data_frame(&mut self, frame: protocol::ProtocolFrame) {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 280 |     fn handle_nack_frame(&mut self, frame: protocol::ProtocolFrame) {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 303 |     fn handle_heartbeat_frame(&mut self, _frame: protocol::ProtocolFrame) {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `buffer_size` is never read
[INFO] [stderr]   --> src/pubsub/udp.rs:85:9
[INFO] [stderr]    |
[INFO] [stderr] 79 |     pub struct PosixUdpSocket {
[INFO] [stderr]    |                -------------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 85 |         buffer_size: usize,
[INFO] [stderr]    |         ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `topic_id` is never read
[INFO] [stderr]   --> src/pubsub/subscriber.rs:17:5
[INFO] [stderr]    |
[INFO] [stderr] 13 | struct Subscriber {
[INFO] [stderr]    |        ---------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 17 |     topic_id: u16,
[INFO] [stderr]    |     ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `is_initialized` is never read
[INFO] [stderr]   --> src/ha/manager.rs:21:5
[INFO] [stderr]    |
[INFO] [stderr] 11 | pub struct HAManager {
[INFO] [stderr]    |            --------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 21 |     is_initialized: bool,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `SYNC_REQUEST_TOPIC` is never used
[INFO] [stderr]   --> src/ha/replication.rs:12:7
[INFO] [stderr]    |
[INFO] [stderr] 12 | const SYNC_REQUEST_TOPIC: u16 = 2;
[INFO] [stderr]    |       ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `confirmed_slaves`, `lock`, and `is_initialized` are never read
[INFO] [stderr]   --> src/ha/replication.rs:19:5
[INFO] [stderr]    |
[INFO] [stderr] 15 | pub struct ReplicationManager {
[INFO] [stderr]    |            ------------------ fields in this struct
[INFO] [stderr] ...
[INFO] [stderr] 19 |     confirmed_slaves: usize,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^
[INFO] [stderr] 20 |     /// 自旋锁
[INFO] [stderr] 21 |     lock: u32,
[INFO] [stderr]    |     ^^^^
[INFO] [stderr] 22 |     /// 是否初始化
[INFO] [stderr] 23 |     is_initialized: bool,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `handle_wal_log` is never used
[INFO] [stderr]   --> src/ha/replication.rs:91:8
[INFO] [stderr]    |
[INFO] [stderr] 26 | impl ReplicationManager {
[INFO] [stderr]    | ----------------------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 91 |     fn handle_wal_log(&self, data: &[u8]) {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `HEARTBEAT_TOPIC` is never used
[INFO] [stderr]  --> src/ha/heartbeat.rs:9:7
[INFO] [stderr]   |
[INFO] [stderr] 9 | const HEARTBEAT_TOPIC: u16 = 3;
[INFO] [stderr]   |       ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `heartbeat_interval`, `failure_detection_time`, `lock`, and `is_initialized` are never read
[INFO] [stderr]   --> src/ha/heartbeat.rs:14:5
[INFO] [stderr]    |
[INFO] [stderr] 12 | pub struct HeartbeatMonitor {
[INFO] [stderr]    |            ---------------- fields in this struct
[INFO] [stderr] 13 |     /// 心跳间隔（毫秒）
[INFO] [stderr] 14 |     heartbeat_interval: u64,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 15 |     /// 故障检测时间（毫秒）
[INFO] [stderr] 16 |     failure_detection_time: u64,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 22 |     lock: u32,
[INFO] [stderr]    |     ^^^^
[INFO] [stderr] 23 |     /// 是否初始化
[INFO] [stderr] 24 |     is_initialized: bool,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: methods `handle_heartbeat` and `send_heartbeat` are never used
[INFO] [stderr]    --> src/ha/heartbeat.rs:104:8
[INFO] [stderr]     |
[INFO] [stderr]  27 | impl HeartbeatMonitor {
[INFO] [stderr]     | --------------------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 104 |     fn handle_heartbeat(&self, data: &[u8]) {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 122 |     fn send_heartbeat(&self) -> Result<()> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `lock` and `is_initialized` are never read
[INFO] [stderr]   --> src/ha/role.rs:17:5
[INFO] [stderr]    |
[INFO] [stderr] 13 | pub struct RoleManager {
[INFO] [stderr]    |            ----------- fields in this struct
[INFO] [stderr] ...
[INFO] [stderr] 17 |     lock: u32,
[INFO] [stderr]    |     ^^^^
[INFO] [stderr] 18 |     /// 是否初始化
[INFO] [stderr] 19 |     is_initialized: bool,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]    --> src/lib.rs:243:13
[INFO] [stderr]     |
[INFO] [stderr] 243 |             crate::transaction::TX_MANAGER.set_low_power_mode(true);
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]     = 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] [stderr]     = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]    --> src/lib.rs:273:13
[INFO] [stderr]     |
[INFO] [stderr] 273 |             crate::transaction::TX_MANAGER.set_low_power_mode(false);
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]     = 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] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]    --> src/lib.rs:298:9
[INFO] [stderr]     |
[INFO] [stderr] 298 |         crate::transaction::TX_MANAGER.begin(tx_type, isolation_level, tx_buffer, log_buffer, max_log_items)
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]     = 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] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]    --> src/lib.rs:303:9
[INFO] [stderr]     |
[INFO] [stderr] 303 |         crate::transaction::TX_MANAGER.commit()
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]     = 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] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]    --> src/lib.rs:308:9
[INFO] [stderr]     |
[INFO] [stderr] 308 |         crate::transaction::TX_MANAGER.rollback(self)
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]     = 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] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]    --> src/lib.rs:335:25
[INFO] [stderr]     |
[INFO] [stderr] 335 |                         crate::transaction::TX_MANAGER.set_log_manager(log_manager);
[INFO] [stderr]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]     = 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] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]     --> src/lib.rs:1410:12
[INFO] [stderr]      |
[INFO] [stderr] 1410 |         Ok(DB_INSTANCE.as_mut().unwrap())
[INFO] [stderr]      |            ^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]      |
[INFO] [stderr]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]      = 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] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]     --> src/lib.rs:1417:9
[INFO] [stderr]      |
[INFO] [stderr] 1417 |         DB_INSTANCE.as_mut()
[INFO] [stderr]      |         ^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]      |
[INFO] [stderr]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]      = 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] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]     --> src/transaction.rs:1212:5
[INFO] [stderr]      |
[INFO] [stderr] 1212 |     TX_MANAGER.begin(tx_type, isolation_level, tx_buffer, log_buffer, max_log_items)
[INFO] [stderr]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]      |
[INFO] [stderr]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]      = 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] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]     --> src/transaction.rs:1217:5
[INFO] [stderr]      |
[INFO] [stderr] 1217 |     TX_MANAGER.commit()
[INFO] [stderr]      |     ^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]      |
[INFO] [stderr]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]      = 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] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]     --> src/transaction.rs:1222:5
[INFO] [stderr]      |
[INFO] [stderr] 1222 |     TX_MANAGER.rollback(db)
[INFO] [stderr]      |     ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]      |
[INFO] [stderr]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]      = 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] [stderr] 
[INFO] [stderr] warning: creating a shared reference to mutable static
[INFO] [stderr]     --> src/transaction.rs:1227:14
[INFO] [stderr]      |
[INFO] [stderr] 1227 |     unsafe { TX_MANAGER.get_current_tx() }
[INFO] [stderr]      |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stderr]      |
[INFO] [stderr]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]      = 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] [stderr] 
[INFO] [stderr] warning: creating a shared reference to mutable static
[INFO] [stderr]     --> src/transaction.rs:1232:14
[INFO] [stderr]      |
[INFO] [stderr] 1232 |     unsafe { TX_MANAGER.has_active_tx() }
[INFO] [stderr]      |              ^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stderr]      |
[INFO] [stderr]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]      = 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] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/sql/result_set.rs:80:17
[INFO] [stderr]    |
[INFO] [stderr] 80 |     pub fn iter(&self) -> ResultRowIter {
[INFO] [stderr]    |                 ^^^^^     ^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |                 |
[INFO] [stderr]    |                 the lifetime is elided here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]    |
[INFO] [stderr] 80 |     pub fn iter(&self) -> ResultRowIter<'_> {
[INFO] [stderr]    |                                        ++++
[INFO] [stderr] 
[INFO] [stderr] warning: creating a shared reference to mutable static
[INFO] [stderr]    --> src/pubsub/mod.rs:366:12
[INFO] [stderr]     |
[INFO] [stderr] 366 |         if PUB_SUB_INSTANCE.is_some() {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]     = 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] [stderr] 
[INFO] [stderr] warning: creating a shared reference to mutable static
[INFO] [stderr]   --> src/ha/mod.rs:56:12
[INFO] [stderr]    |
[INFO] [stderr] 56 |         if HA_MANAGER.is_some() {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stderr]    |
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]    = 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] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]   --> src/ha/mod.rs:71:9
[INFO] [stderr]    |
[INFO] [stderr] 71 |         HA_MANAGER.as_mut()
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]    |
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]    = 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] [stderr] 
[INFO] [stderr] warning: `remdb` (lib) generated 76 warnings (run `cargo fix --lib -p remdb` to apply 34 suggestions)
[INFO] [stderr] warning: unused `#[macro_use]` import
[INFO] [stderr]  --> examples/ha_example.rs:3:1
[INFO] [stderr]   |
[INFO] [stderr] 3 | #[macro_use]
[INFO] [stderr]   | ^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `core::ptr::NonNull`
[INFO] [stderr]  --> examples/ha_example.rs:6:5
[INFO] [stderr]   |
[INFO] [stderr] 6 | use core::ptr::NonNull;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `HARole` and `ReplicationMode`
[INFO] [stderr]  --> examples/ha_example.rs:8:21
[INFO] [stderr]   |
[INFO] [stderr] 8 | use remdb::config::{HARole, ReplicationMode};
[INFO] [stderr]   |                     ^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `tx`
[INFO] [stderr]   --> examples/ha_example.rs:73:13
[INFO] [stderr]    |
[INFO] [stderr] 73 |         let tx = transaction::begin(
[INFO] [stderr]    |             ^^ help: if this is intentional, prefix it with an underscore: `_tx`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]   --> examples/ha_example.rs:46:9
[INFO] [stderr]    |
[INFO] [stderr] 46 | /         memory::allocator::init_global_allocator(
[INFO] [stderr] 47 | |             DB_MEMORY.as_mut_ptr(),
[INFO] [stderr] 48 | |             DB_MEMORY.len()
[INFO] [stderr] 49 | |         );
[INFO] [stderr]    | |_________^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 46 |         let _ = memory::allocator::init_global_allocator(
[INFO] [stderr]    |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]   --> examples/ha_example.rs:47:13
[INFO] [stderr]    |
[INFO] [stderr] 47 |             DB_MEMORY.as_mut_ptr(),
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]    |
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]    = 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] [stderr]    = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: creating a shared reference to mutable static
[INFO] [stderr]   --> examples/ha_example.rs:48:13
[INFO] [stderr]    |
[INFO] [stderr] 48 |             DB_MEMORY.len()
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stderr]    |
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]    = 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] [stderr] 
[INFO] [stderr] warning: the type `Transaction` does not permit being left uninitialized
[INFO] [stderr]   --> examples/ha_example.rs:59:55
[INFO] [stderr]    |
[INFO] [stderr] 59 |         let mut tx_buffer: transaction::Transaction = core::mem::MaybeUninit::uninit().assume_init();
[INFO] [stderr]    |                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |                                                       |
[INFO] [stderr]    |                                                       this code causes undefined behavior when executed
[INFO] [stderr]    |                                                       help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stderr]    |
[INFO] [stderr]    = note: integers must be initialized
[INFO] [stderr]    = note: `#[warn(invalid_value)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> examples/ha_example.rs:129:9
[INFO] [stderr]     |
[INFO] [stderr] 129 | /         memory::allocator::init_global_allocator(
[INFO] [stderr] 130 | |             DB_MEMORY.as_mut_ptr(),
[INFO] [stderr] 131 | |             DB_MEMORY.len()
[INFO] [stderr] 132 | |         );
[INFO] [stderr]     | |_________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 129 |         let _ = memory::allocator::init_global_allocator(
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]    --> examples/ha_example.rs:130:13
[INFO] [stderr]     |
[INFO] [stderr] 130 |             DB_MEMORY.as_mut_ptr(),
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]     = 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] [stderr] 
[INFO] [stderr] warning: creating a shared reference to mutable static
[INFO] [stderr]    --> examples/ha_example.rs:131:13
[INFO] [stderr]     |
[INFO] [stderr] 131 |             DB_MEMORY.len()
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]     = 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] [stderr] 
[INFO] [stderr] warning: unused import: `Result`
[INFO] [stderr]  --> tests/pubsub_test.rs:8:56
[INFO] [stderr]   |
[INFO] [stderr] 8 |     use remdb::pubsub::{PubSub, PubSubConfig, UdpMode, Result};
[INFO] [stderr]   |                                                        ^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]   --> examples/test_default_value.rs:18:27
[INFO] [stderr]    |
[INFO] [stderr] 18 |         memory_allocator: &mut DEFAULT_ALLOCATOR,
[INFO] [stderr]    |                           ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]    |
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]    = 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] [stderr]    = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stderr] help: use `&raw mut` instead to create a raw pointer
[INFO] [stderr]    |
[INFO] [stderr] 18 |         memory_allocator: &raw mut DEFAULT_ALLOCATOR,
[INFO] [stderr]    |                            +++
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]   --> examples/test_default_value.rs:41:31
[INFO] [stderr]    |
[INFO] [stderr] 41 |         init_global_allocator(MEMORY_BUFFER.as_mut_ptr(), MEMORY_BUFFER.len())
[INFO] [stderr]    |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]    |
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]    = 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] [stderr] 
[INFO] [stderr] warning: creating a shared reference to mutable static
[INFO] [stderr]   --> examples/test_default_value.rs:41:59
[INFO] [stderr]    |
[INFO] [stderr] 41 |         init_global_allocator(MEMORY_BUFFER.as_mut_ptr(), MEMORY_BUFFER.len())
[INFO] [stderr]    |                                                           ^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stderr]    |
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]    = 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] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> examples/varchar_example.rs:41:13
[INFO] [stderr]    |
[INFO] [stderr] 41 |         let mut db = init_global_db(&CONFIG).expect("Failed to initialize database");
[INFO] [stderr]    |             ----^^
[INFO] [stderr]    |             |
[INFO] [stderr]    |             help: remove this `mut`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]   --> examples/varchar_example.rs:12:13
[INFO] [stderr]    |
[INFO] [stderr] 12 |             DB_MEMORY.as_mut_ptr(),
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]    |
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]    = 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] [stderr]    = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: creating a shared reference to mutable static
[INFO] [stderr]   --> examples/varchar_example.rs:13:13
[INFO] [stderr]    |
[INFO] [stderr] 13 |             DB_MEMORY.len()
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stderr]    |
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]    = 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] [stderr] 
[INFO] [stderr] warning: unused import: `core::ptr::NonNull`
[INFO] [stderr]  --> tests/time_series_test.rs:3:5
[INFO] [stderr]   |
[INFO] [stderr] 3 | use core::ptr::NonNull;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]   --> tests/time_series_test.rs:38:28
[INFO] [stderr]    |
[INFO] [stderr] 38 |     core::ptr::write_bytes(DB_MEMORY.as_mut_ptr(), 0, DB_MEMORY.len());
[INFO] [stderr]    |                            ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]    |
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]    = 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] [stderr]    = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: creating a shared reference to mutable static
[INFO] [stderr]   --> tests/time_series_test.rs:38:55
[INFO] [stderr]    |
[INFO] [stderr] 38 |     core::ptr::write_bytes(DB_MEMORY.as_mut_ptr(), 0, DB_MEMORY.len());
[INFO] [stderr]    |                                                       ^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stderr]    |
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]    = 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] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]   --> tests/time_series_test.rs:42:9
[INFO] [stderr]    |
[INFO] [stderr] 42 |         DB_MEMORY.as_mut_ptr(),
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]    |
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]    = 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] [stderr] 
[INFO] [stderr] warning: creating a shared reference to mutable static
[INFO] [stderr]   --> tests/time_series_test.rs:43:9
[INFO] [stderr]    |
[INFO] [stderr] 43 |         DB_MEMORY.len()
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stderr]    |
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]    = 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] [stderr] 
[INFO] [stderr] warning: unused import: `core::ptr::NonNull`
[INFO] [stderr]  --> examples/multiple_tables.rs:3:5
[INFO] [stderr]   |
[INFO] [stderr] 3 | use core::ptr::NonNull;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `alloc::string::String`
[INFO] [stderr]  --> examples/multiple_tables.rs:5:5
[INFO] [stderr]   |
[INFO] [stderr] 5 | use alloc::string::String;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: static variable `users` should have an upper case name
[INFO] [stderr]   --> examples/multiple_tables.rs:12:8
[INFO] [stderr]    |
[INFO] [stderr] 12 | static users: remdb::types::TableDef = remdb::types::TableDef {
[INFO] [stderr]    |        ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(non_upper_case_globals)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stderr] help: convert the identifier to upper case
[INFO] [stderr]    |
[INFO] [stderr] 12 - static users: remdb::types::TableDef = remdb::types::TableDef {
[INFO] [stderr] 12 + static USERS: remdb::types::TableDef = remdb::types::TableDef {
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: static variable `orders` should have an upper case name
[INFO] [stderr]   --> examples/multiple_tables.rs:91:8
[INFO] [stderr]    |
[INFO] [stderr] 91 | static orders: remdb::types::TableDef = remdb::types::TableDef {
[INFO] [stderr]    |        ^^^^^^
[INFO] [stderr]    |
[INFO] [stderr] help: convert the identifier to upper case
[INFO] [stderr]    |
[INFO] [stderr] 91 - static orders: remdb::types::TableDef = remdb::types::TableDef {
[INFO] [stderr] 91 + static ORDERS: remdb::types::TableDef = remdb::types::TableDef {
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: static variable `products` should have an upper case name
[INFO] [stderr]    --> examples/multiple_tables.rs:181:8
[INFO] [stderr]     |
[INFO] [stderr] 181 | static products: remdb::types::TableDef = remdb::types::TableDef {
[INFO] [stderr]     |        ^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr] help: convert the identifier to upper case
[INFO] [stderr]     |
[INFO] [stderr] 181 - static products: remdb::types::TableDef = remdb::types::TableDef {
[INFO] [stderr] 181 + static PRODUCTS: remdb::types::TableDef = remdb::types::TableDef {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> examples/multiple_tables.rs:271:9
[INFO] [stderr]     |
[INFO] [stderr] 271 | /         memory::allocator::init_global_allocator(
[INFO] [stderr] 272 | |             DB_MEMORY.as_mut_ptr(),
[INFO] [stderr] 273 | |             DB_MEMORY.len()
[INFO] [stderr] 274 | |         );
[INFO] [stderr]     | |_________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 271 |         let _ = memory::allocator::init_global_allocator(
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]    --> examples/multiple_tables.rs:272:13
[INFO] [stderr]     |
[INFO] [stderr] 272 |             DB_MEMORY.as_mut_ptr(),
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]     = 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] [stderr]     = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: creating a shared reference to mutable static
[INFO] [stderr]    --> examples/multiple_tables.rs:273:13
[INFO] [stderr]     |
[INFO] [stderr] 273 |             DB_MEMORY.len()
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]     = 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] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]   --> examples/test_auto_increment.rs:12:13
[INFO] [stderr]    |
[INFO] [stderr] 12 |             DB_MEMORY.as_mut_ptr(),
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]    |
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]    = 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] [stderr]    = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: creating a shared reference to mutable static
[INFO] [stderr]   --> examples/test_auto_increment.rs:13:13
[INFO] [stderr]    |
[INFO] [stderr] 13 |             DB_MEMORY.len()
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stderr]    |
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]    = 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] [stderr] 
[INFO] [stderr] warning: unused import: `core::ptr::NonNull`
[INFO] [stderr]  --> examples/basic_usage.rs:3:5
[INFO] [stderr]   |
[INFO] [stderr] 3 | use core::ptr::NonNull;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]   --> examples/basic_usage.rs:36:9
[INFO] [stderr]    |
[INFO] [stderr] 36 | /         memory::allocator::init_global_allocator(
[INFO] [stderr] 37 | |             DB_MEMORY.as_mut_ptr(),
[INFO] [stderr] 38 | |             DB_MEMORY.len()
[INFO] [stderr] 39 | |         );
[INFO] [stderr]    | |_________^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 36 |         let _ = memory::allocator::init_global_allocator(
[INFO] [stderr]    |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]   --> examples/basic_usage.rs:37:13
[INFO] [stderr]    |
[INFO] [stderr] 37 |             DB_MEMORY.as_mut_ptr(),
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]    |
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]    = 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] [stderr]    = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: creating a shared reference to mutable static
[INFO] [stderr]   --> examples/basic_usage.rs:38:13
[INFO] [stderr]    |
[INFO] [stderr] 38 |             DB_MEMORY.len()
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stderr]    |
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]    = 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] [stderr] 
[INFO] [stderr] warning: the type `Transaction` does not permit being left uninitialized
[INFO] [stderr]    --> examples/basic_usage.rs:166:55
[INFO] [stderr]     |
[INFO] [stderr] 166 |         let mut tx_buffer: transaction::Transaction = core::mem::MaybeUninit::uninit().assume_init();
[INFO] [stderr]     |                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |                                                       |
[INFO] [stderr]     |                                                       this code causes undefined behavior when executed
[INFO] [stderr]     |                                                       help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stderr]     |
[INFO] [stderr]     = note: integers must be initialized
[INFO] [stderr]     = note: `#[warn(invalid_value)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `core::ptr::NonNull`
[INFO] [stderr]  --> examples/time_series.rs:3:5
[INFO] [stderr]   |
[INFO] [stderr] 3 | use core::ptr::NonNull;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `sum`
[INFO] [stderr]    --> examples/time_series.rs:265:32
[INFO] [stderr]     |
[INFO] [stderr] 265 |         for (i, (window_start, sum, avg, min, max, count)) in window_aggregates.iter().enumerate() {
[INFO] [stderr]     |                                ^^^ help: if this is intentional, prefix it with an underscore: `_sum`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]   --> examples/time_series.rs:37:13
[INFO] [stderr]    |
[INFO] [stderr] 37 |             DB_MEMORY.as_mut_ptr(),
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]    |
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]    = 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] [stderr]    = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: creating a shared reference to mutable static
[INFO] [stderr]   --> examples/time_series.rs:38:13
[INFO] [stderr]    |
[INFO] [stderr] 38 |             DB_MEMORY.len()
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stderr]    |
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]    = 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] [stderr] 
[INFO] [stderr] warning: unused import: `std::ptr::NonNull`
[INFO] [stderr]  --> tests/transaction_test.rs:1:33
[INFO] [stderr]   |
[INFO] [stderr] 1 | use core::mem::MaybeUninit; use std::ptr::NonNull; extern crate alloc; use alloc::sync::Arc;
[INFO] [stderr]   |                                 ^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `alloc::sync::Arc`
[INFO] [stderr]  --> tests/transaction_test.rs:1:76
[INFO] [stderr]   |
[INFO] [stderr] 1 | use core::mem::MaybeUninit; use std::ptr::NonNull; extern crate alloc; use alloc::sync::Arc;
[INFO] [stderr]   |                                                                            ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> tests/transaction_test.rs:253:13
[INFO] [stderr]     |
[INFO] [stderr] 253 |         let mut table_mut = db.get_table_mut(0).unwrap();
[INFO] [stderr]     |             ----^^^^^^^^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `tx`
[INFO] [stderr]    --> tests/transaction_test.rs:228:13
[INFO] [stderr]     |
[INFO] [stderr] 228 |         let tx = db.begin_transaction(
[INFO] [stderr]     |             ^^ help: if this is intentional, prefix it with an underscore: `_tx`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `record_id`
[INFO] [stderr]    --> tests/transaction_test.rs:254:13
[INFO] [stderr]     |
[INFO] [stderr] 254 |         let record_id = table_mut.insert(record_data.as_ptr()).unwrap();
[INFO] [stderr]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_record_id`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> tests/transaction_test.rs:348:13
[INFO] [stderr]     |
[INFO] [stderr] 348 |         let mut table_mut = db.get_table_mut(0).unwrap();
[INFO] [stderr]     |             ----^^^^^^^^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `tx`
[INFO] [stderr]    --> tests/transaction_test.rs:323:13
[INFO] [stderr]     |
[INFO] [stderr] 323 |         let tx = db.begin_transaction(
[INFO] [stderr]     |             ^^ help: if this is intentional, prefix it with an underscore: `_tx`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> tests/transaction_test.rs:460:13
[INFO] [stderr]     |
[INFO] [stderr] 460 |         let mut table_mut = db.get_table_mut(0).unwrap();
[INFO] [stderr]     |             ----^^^^^^^^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `tx`
[INFO] [stderr]    --> tests/transaction_test.rs:436:13
[INFO] [stderr]     |
[INFO] [stderr] 436 |         let tx = db.begin_transaction(
[INFO] [stderr]     |             ^^ help: if this is intentional, prefix it with an underscore: `_tx`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> tests/transaction_test.rs:564:13
[INFO] [stderr]     |
[INFO] [stderr] 564 |         let mut table_mut = db.get_table_mut(0).unwrap();
[INFO] [stderr]     |             ----^^^^^^^^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `tx`
[INFO] [stderr]    --> tests/transaction_test.rs:555:13
[INFO] [stderr]     |
[INFO] [stderr] 555 |         let tx = db.begin_transaction(
[INFO] [stderr]     |             ^^ help: if this is intentional, prefix it with an underscore: `_tx`
[INFO] [stderr] 
[INFO] [stderr] warning: static `TABLE_FREE_SLOTS_BUFFER` is never used
[INFO] [stderr]    --> tests/transaction_test.rs:170:12
[INFO] [stderr]     |
[INFO] [stderr] 170 | static mut TABLE_FREE_SLOTS_BUFFER: [usize; 100] = [0usize; 100];
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]    --> tests/transaction_test.rs:147:9
[INFO] [stderr]     |
[INFO] [stderr] 147 |         &mut DEFAULT_ALLOCATOR
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]     = 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] [stderr]     = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stderr] help: use `&raw mut` instead to create a raw pointer
[INFO] [stderr]     |
[INFO] [stderr] 147 |         &raw mut DEFAULT_ALLOCATOR
[INFO] [stderr]     |          +++
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]    --> tests/transaction_test.rs:189:9
[INFO] [stderr]     |
[INFO] [stderr] 189 |         TX_MANAGER.reset();
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]     = 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] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]    --> tests/transaction_test.rs:195:9
[INFO] [stderr]     |
[INFO] [stderr] 195 |         TABLE_DATA_BUFFER.fill(0);
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]     = 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] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]    --> tests/transaction_test.rs:284:9
[INFO] [stderr]     |
[INFO] [stderr] 284 |         TX_MANAGER.reset();
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]     = 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] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]    --> tests/transaction_test.rs:290:9
[INFO] [stderr]     |
[INFO] [stderr] 290 |         TABLE_DATA_BUFFER.fill(0);
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]     = 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] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]    --> tests/transaction_test.rs:379:9
[INFO] [stderr]     |
[INFO] [stderr] 379 |         TX_MANAGER.reset();
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]     = 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] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]    --> tests/transaction_test.rs:385:9
[INFO] [stderr]     |
[INFO] [stderr] 385 |         TABLE_DATA_BUFFER.fill(0);
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]     = 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] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]    --> tests/transaction_test.rs:498:9
[INFO] [stderr]     |
[INFO] [stderr] 498 |         TX_MANAGER.reset();
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]     = 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] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]    --> tests/transaction_test.rs:504:9
[INFO] [stderr]     |
[INFO] [stderr] 504 |         TABLE_DATA_BUFFER.fill(0);
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]     = 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] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]    --> examples/incremental_snapshot.rs:202:13
[INFO] [stderr]     |
[INFO] [stderr] 202 |             DB_MEMORY.as_mut_ptr(),
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]     = 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] [stderr]     = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: creating a shared reference to mutable static
[INFO] [stderr]    --> examples/incremental_snapshot.rs:203:13
[INFO] [stderr]     |
[INFO] [stderr] 203 |             DB_MEMORY.len()
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]     = 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] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> examples/incremental_snapshot.rs:243:13
[INFO] [stderr]     |
[INFO] [stderr] 243 |             table.set_field(record.0.as_mut_ptr(), 2, &value_value);
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 243 |             let _ = table.set_field(record.0.as_mut_ptr(), 2, &value_value);
[INFO] [stderr]     |             +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `remdb::table::*`
[INFO] [stderr]  --> tests/large_table_test.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use remdb::table::*;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `AnySecondaryIndex` and `PrimaryIndex`
[INFO] [stderr]  --> tests/large_table_test.rs:4:29
[INFO] [stderr]   |
[INFO] [stderr] 4 | use remdb::{init_global_db, PrimaryIndex, AnySecondaryIndex}; use remdb::config::DefaultMemoryAllocator;
[INFO] [stderr]   |                             ^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary `unsafe` block
[INFO] [stderr]    --> tests/large_table_test.rs:159:5
[INFO] [stderr]     |
[INFO] [stderr] 159 |     unsafe {
[INFO] [stderr]     |     ^^^^^^ unnecessary `unsafe` block
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]    --> tests/large_table_test.rs:172:13
[INFO] [stderr]     |
[INFO] [stderr] 172 |             &mut DEFAULT_ALLOCATOR
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]     = 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] [stderr]     = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stderr] help: use `&raw mut` instead to create a raw pointer
[INFO] [stderr]     |
[INFO] [stderr] 172 |             &raw mut DEFAULT_ALLOCATOR
[INFO] [stderr]     |              +++
[INFO] [stderr] 
[INFO] [stderr] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stderr]    --> tests/large_table_test.rs:248:9
[INFO] [stderr]     |
[INFO] [stderr] 248 |         drop(table); // 释放表的可变引用
[INFO] [stderr]     |         ^^^^^-----^
[INFO] [stderr]     |              |
[INFO] [stderr]     |              argument has type `&mut MemoryTable`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(dropping_references)]` on by default
[INFO] [stderr] help: use `let _ = ...` to ignore the expression or result
[INFO] [stderr]     |
[INFO] [stderr] 248 -         drop(table); // 释放表的可变引用
[INFO] [stderr] 248 +         let _ = table; // 释放表的可变引用
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stderr]    --> tests/large_table_test.rs:286:9
[INFO] [stderr]     |
[INFO] [stderr] 286 |         drop(table);
[INFO] [stderr]     |         ^^^^^-----^
[INFO] [stderr]     |              |
[INFO] [stderr]     |              argument has type `&mut MemoryTable`
[INFO] [stderr]     |
[INFO] [stderr] help: use `let _ = ...` to ignore the expression or result
[INFO] [stderr]     |
[INFO] [stderr] 286 -         drop(table);
[INFO] [stderr] 286 +         let _ = table;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stderr]    --> tests/large_table_test.rs:317:9
[INFO] [stderr]     |
[INFO] [stderr] 317 |         drop(table);
[INFO] [stderr]     |         ^^^^^-----^
[INFO] [stderr]     |              |
[INFO] [stderr]     |              argument has type `&mut MemoryTable`
[INFO] [stderr]     |
[INFO] [stderr] help: use `let _ = ...` to ignore the expression or result
[INFO] [stderr]     |
[INFO] [stderr] 317 -         drop(table);
[INFO] [stderr] 317 +         let _ = table;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stderr]    --> tests/large_table_test.rs:372:9
[INFO] [stderr]     |
[INFO] [stderr] 372 |         drop(table);
[INFO] [stderr]     |         ^^^^^-----^
[INFO] [stderr]     |              |
[INFO] [stderr]     |              argument has type `&mut MemoryTable`
[INFO] [stderr]     |
[INFO] [stderr] help: use `let _ = ...` to ignore the expression or result
[INFO] [stderr]     |
[INFO] [stderr] 372 -         drop(table);
[INFO] [stderr] 372 +         let _ = table;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stderr]    --> tests/large_table_test.rs:402:9
[INFO] [stderr]     |
[INFO] [stderr] 402 |         drop(table);
[INFO] [stderr]     |         ^^^^^-----^
[INFO] [stderr]     |              |
[INFO] [stderr]     |              argument has type `&mut MemoryTable`
[INFO] [stderr]     |
[INFO] [stderr] help: use `let _ = ...` to ignore the expression or result
[INFO] [stderr]     |
[INFO] [stderr] 402 -         drop(table);
[INFO] [stderr] 402 +         let _ = table;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `remdb::types::RecordHeader`
[INFO] [stderr]  --> examples/generate_snapshot.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | use remdb::types::RecordHeader;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]    --> examples/generate_snapshot.rs:206:13
[INFO] [stderr]     |
[INFO] [stderr] 206 |             DB_MEMORY.as_mut_ptr(),
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]     = 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] [stderr]     = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: creating a shared reference to mutable static
[INFO] [stderr]    --> examples/generate_snapshot.rs:207:13
[INFO] [stderr]     |
[INFO] [stderr] 207 |             DB_MEMORY.len()
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]     = 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] [stderr] 
[INFO] [stderr] warning: unused variable: `id`
[INFO] [stderr]    --> tests/table_test.rs:363:17
[INFO] [stderr]     |
[INFO] [stderr] 363 |             let id = core::ptr::read(data_ptr as *const u32);
[INFO] [stderr]     |                 ^^ help: if this is intentional, prefix it with an underscore: `_id`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary `unsafe` block
[INFO] [stderr]    --> tests/export_test.rs:240:5
[INFO] [stderr]     |
[INFO] [stderr] 240 |     unsafe {
[INFO] [stderr]     |     ^^^^^^ unnecessary `unsafe` block
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]   --> tests/export_test.rs:42:9
[INFO] [stderr]    |
[INFO] [stderr] 42 |         crate::transaction::TX_MANAGER.clear_log_manager();
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]    |
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]    = 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] [stderr]    = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]   --> tests/export_test.rs:51:57
[INFO] [stderr]    |
[INFO] [stderr] 51 |         crate::memory::allocator::init_global_allocator(DB_MEMORY.as_mut_ptr(), DB_MEMORY.len()).unwrap();
[INFO] [stderr]    |                                                         ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]    |
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]    = 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] [stderr] 
[INFO] [stderr] warning: creating a shared reference to mutable static
[INFO] [stderr]   --> tests/export_test.rs:51:81
[INFO] [stderr]    |
[INFO] [stderr] 51 |         crate::memory::allocator::init_global_allocator(DB_MEMORY.as_mut_ptr(), DB_MEMORY.len()).unwrap();
[INFO] [stderr]    |                                                                                 ^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stderr]    |
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]    = 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] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]   --> tests/export_test.rs:95:9
[INFO] [stderr]    |
[INFO] [stderr] 95 |         crate::transaction::TX_MANAGER.clear_log_manager();
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]    |
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]    = 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] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]    --> tests/export_test.rs:104:57
[INFO] [stderr]     |
[INFO] [stderr] 104 |         crate::memory::allocator::init_global_allocator(DB_MEMORY.as_mut_ptr(), DB_MEMORY.len()).unwrap();
[INFO] [stderr]     |                                                         ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]     = 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] [stderr] 
[INFO] [stderr] warning: creating a shared reference to mutable static
[INFO] [stderr]    --> tests/export_test.rs:104:81
[INFO] [stderr]     |
[INFO] [stderr] 104 |         crate::memory::allocator::init_global_allocator(DB_MEMORY.as_mut_ptr(), DB_MEMORY.len()).unwrap();
[INFO] [stderr]     |                                                                                 ^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]     = 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] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]    --> tests/export_test.rs:196:9
[INFO] [stderr]     |
[INFO] [stderr] 196 |         crate::transaction::TX_MANAGER.clear_log_manager();
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]     = 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] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]    --> tests/export_test.rs:205:57
[INFO] [stderr]     |
[INFO] [stderr] 205 |         crate::memory::allocator::init_global_allocator(DB_MEMORY.as_mut_ptr(), DB_MEMORY.len()).unwrap();
[INFO] [stderr]     |                                                         ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]     = 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] [stderr] 
[INFO] [stderr] warning: creating a shared reference to mutable static
[INFO] [stderr]    --> tests/export_test.rs:205:81
[INFO] [stderr]     |
[INFO] [stderr] 205 |         crate::memory::allocator::init_global_allocator(DB_MEMORY.as_mut_ptr(), DB_MEMORY.len()).unwrap();
[INFO] [stderr]     |                                                                                 ^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]     = 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] [stderr] 
[INFO] [stderr] warning: `remdb` (example "ha_example") generated 11 warnings (run `cargo fix --example "ha_example" -p remdb` to apply 3 suggestions)
[INFO] [stderr] warning: `remdb` (test "pubsub_test") generated 1 warning (run `cargo fix --test "pubsub_test" -p remdb` to apply 1 suggestion)
[INFO] [stderr] warning: `remdb` (example "test_default_value") generated 3 warnings
[INFO] [stderr] warning: `remdb` (example "varchar_example") generated 3 warnings (run `cargo fix --example "varchar_example" -p remdb` to apply 1 suggestion)
[INFO] [stderr] warning: `remdb` (test "time_series_test") generated 5 warnings (run `cargo fix --test "time_series_test" -p remdb` to apply 1 suggestion)
[INFO] [stderr] warning: `remdb` (example "multiple_tables") generated 8 warnings (run `cargo fix --example "multiple_tables" -p remdb` to apply 5 suggestions)
[INFO] [stderr] warning: `remdb` (example "test_auto_increment") generated 2 warnings
[INFO] [stderr] warning: `remdb` (example "basic_usage") generated 5 warnings (run `cargo fix --example "basic_usage" -p remdb` to apply 1 suggestion)
[INFO] [stderr] warning: `remdb` (example "time_series") generated 4 warnings (run `cargo fix --example "time_series" -p remdb` to apply 2 suggestions)
[INFO] [stderr] warning: `remdb` (test "transaction_test") generated 21 warnings (run `cargo fix --test "transaction_test" -p remdb` to apply 11 suggestions)
[INFO] [stderr] warning: `remdb` (example "incremental_snapshot") generated 3 warnings
[INFO] [stderr] warning: `remdb` (test "large_table_test") generated 9 warnings (run `cargo fix --test "large_table_test" -p remdb` to apply 2 suggestions)
[INFO] [stderr] warning: `remdb` (example "generate_snapshot") generated 3 warnings (run `cargo fix --example "generate_snapshot" -p remdb` to apply 1 suggestion)
[INFO] [stderr] warning: `remdb` (test "table_test") generated 1 warning (run `cargo fix --test "table_test" -p remdb` to apply 1 suggestion)
[INFO] [stderr] warning: `remdb` (test "export_test") generated 10 warnings
[INFO] [stderr] warning: unused import: `Result as HAResult`
[INFO] [stderr]  --> tests/ha_test.rs:5:26
[INFO] [stderr]   |
[INFO] [stderr] 5 | use remdb::ha::{HAError, Result as HAResult};
[INFO] [stderr]   |                          ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary `unsafe` block
[INFO] [stderr]    --> tests/ha_test.rs:101:5
[INFO] [stderr]     |
[INFO] [stderr] 101 |     unsafe {
[INFO] [stderr]     |     ^^^^^^ unnecessary `unsafe` block
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::sync::Arc`
[INFO] [stderr]  --> tests/sql_query_test.rs:8:5
[INFO] [stderr]   |
[INFO] [stderr] 8 | use std::sync::Arc;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary `unsafe` block
[INFO] [stderr]    --> tests/sql_query_test.rs:147:14
[INFO] [stderr]     |
[INFO] [stderr] 147 |     let db = unsafe {
[INFO] [stderr]     |              ^^^^^^ unnecessary `unsafe` block
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary `unsafe` block
[INFO] [stderr]    --> tests/sql_query_test.rs:226:25
[INFO] [stderr]     |
[INFO] [stderr] 226 |         let insert_id = unsafe {
[INFO] [stderr]     |                         ^^^^^^ unnecessary `unsafe` block
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary `unsafe` block
[INFO] [stderr]    --> tests/sql_query_test.rs:236:17
[INFO] [stderr]     |
[INFO] [stderr] 236 |     let table = unsafe { db.get_table_mut(0).unwrap() };
[INFO] [stderr]     |                 ^^^^^^ unnecessary `unsafe` block
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary `unsafe` block
[INFO] [stderr]    --> tests/sql_query_test.rs:300:17
[INFO] [stderr]     |
[INFO] [stderr] 300 |     let table = unsafe { db.get_table_mut(0).unwrap() };
[INFO] [stderr]     |                 ^^^^^^ unnecessary `unsafe` block
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `record_ptr`
[INFO] [stderr]    --> tests/sql_query_test.rs:247:28
[INFO] [stderr]     |
[INFO] [stderr] 247 |         table.iterate(|id, record_ptr| {
[INFO] [stderr]     |                            ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_record_ptr`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]    --> tests/sql_query_test.rs:134:13
[INFO] [stderr]     |
[INFO] [stderr] 134 |             DB_MEMORY.as_mut_ptr(),
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]     = 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] [stderr]     = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: creating a shared reference to mutable static
[INFO] [stderr]    --> tests/sql_query_test.rs:135:13
[INFO] [stderr]     |
[INFO] [stderr] 135 |             DB_MEMORY.len()
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]     = 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] [stderr] 
[INFO] [stderr] warning: struct `Database` is never constructed
[INFO] [stderr]   --> examples/ddl_full_example.rs:25:8
[INFO] [stderr]    |
[INFO] [stderr] 25 | struct Database;
[INFO] [stderr]    |        ^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]   --> examples/ddl_full_example.rs:42:9
[INFO] [stderr]    |
[INFO] [stderr] 42 | /         memory::allocator::init_global_allocator(
[INFO] [stderr] 43 | |             DB_MEMORY.as_mut_ptr(),
[INFO] [stderr] 44 | |             DB_MEMORY.len()
[INFO] [stderr] 45 | |         );
[INFO] [stderr]    | |_________^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 42 |         let _ = memory::allocator::init_global_allocator(
[INFO] [stderr]    |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]   --> examples/ddl_full_example.rs:43:13
[INFO] [stderr]    |
[INFO] [stderr] 43 |             DB_MEMORY.as_mut_ptr(),
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]    |
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]    = 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] [stderr]    = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: creating a shared reference to mutable static
[INFO] [stderr]   --> examples/ddl_full_example.rs:44:13
[INFO] [stderr]    |
[INFO] [stderr] 44 |             DB_MEMORY.len()
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stderr]    |
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]    = 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] [stderr] 
[INFO] [stderr] warning: unused import: `core::ptr::NonNull`
[INFO] [stderr]  --> examples/describe_table.rs:3:5
[INFO] [stderr]   |
[INFO] [stderr] 3 | use core::ptr::NonNull;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]   --> examples/describe_table.rs:34:9
[INFO] [stderr]    |
[INFO] [stderr] 34 | /         memory::allocator::init_global_allocator(
[INFO] [stderr] 35 | |             DB_MEMORY.as_mut_ptr(),
[INFO] [stderr] 36 | |             DB_MEMORY.len()
[INFO] [stderr] 37 | |         );
[INFO] [stderr]    | |_________^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 34 |         let _ = memory::allocator::init_global_allocator(
[INFO] [stderr]    |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]   --> examples/describe_table.rs:35:13
[INFO] [stderr]    |
[INFO] [stderr] 35 |             DB_MEMORY.as_mut_ptr(),
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]    |
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]    = 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] [stderr]    = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: creating a shared reference to mutable static
[INFO] [stderr]   --> examples/describe_table.rs:36:13
[INFO] [stderr]    |
[INFO] [stderr] 36 |             DB_MEMORY.len()
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stderr]    |
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]    = 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] [stderr] 
[INFO] [stderr] warning: struct `Database` is never constructed
[INFO] [stderr]   --> examples/ddl_example.rs:13:8
[INFO] [stderr]    |
[INFO] [stderr] 13 | struct Database;
[INFO] [stderr]    |        ^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `alloc::vec::Vec`
[INFO] [stderr]  --> examples/sql_query.rs:9:5
[INFO] [stderr]   |
[INFO] [stderr] 9 | use alloc::vec::Vec;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `core::alloc::Layout`
[INFO] [stderr]   --> examples/sql_query.rs:11:5
[INFO] [stderr]    |
[INFO] [stderr] 11 | use core::alloc::Layout;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `core::ptr::NonNull`
[INFO] [stderr]   --> examples/sql_query.rs:12:5
[INFO] [stderr]    |
[INFO] [stderr] 12 | use core::ptr::NonNull;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]   --> examples/sql_query.rs:45:9
[INFO] [stderr]    |
[INFO] [stderr] 45 | /         memory::allocator::init_global_allocator(
[INFO] [stderr] 46 | |             DB_MEMORY.as_mut_ptr(),
[INFO] [stderr] 47 | |             DB_MEMORY.len()
[INFO] [stderr] 48 | |         );
[INFO] [stderr]    | |_________^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 45 |         let _ = memory::allocator::init_global_allocator(
[INFO] [stderr]    |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]   --> examples/sql_query.rs:46:13
[INFO] [stderr]    |
[INFO] [stderr] 46 |             DB_MEMORY.as_mut_ptr(),
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]    |
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]    = 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] [stderr]    = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: creating a shared reference to mutable static
[INFO] [stderr]   --> examples/sql_query.rs:47:13
[INFO] [stderr]    |
[INFO] [stderr] 47 |             DB_MEMORY.len()
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stderr]    |
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]    = 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] [stderr] 
[INFO] [stderr] warning: unused import: `remdb::types::Result`
[INFO] [stderr]  --> tests/memory_test.rs:3:5
[INFO] [stderr]   |
[INFO] [stderr] 3 | use remdb::types::Result;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary `unsafe` block
[INFO] [stderr]   --> tests/memory_test.rs:12:5
[INFO] [stderr]    |
[INFO] [stderr] 12 |     unsafe {
[INFO] [stderr]    |     ^^^^^^ unnecessary `unsafe` block
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `ptr3`
[INFO] [stderr]   --> tests/memory_test.rs:25:13
[INFO] [stderr]    |
[INFO] [stderr] 25 |         let ptr3 = allocator.allocate(64).unwrap();
[INFO] [stderr]    |             ^^^^ help: if this is intentional, prefix it with an underscore: `_ptr3`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `pool_sizes`
[INFO] [stderr]   --> tests/memory_test.rs:81:9
[INFO] [stderr]    |
[INFO] [stderr] 81 |     let pool_sizes = [16, 32, 64, 128];
[INFO] [stderr]    |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pool_sizes`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `pool_counts`
[INFO] [stderr]   --> tests/memory_test.rs:82:9
[INFO] [stderr]    |
[INFO] [stderr] 82 |     let pool_counts = [16, 8, 4, 2];
[INFO] [stderr]    |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pool_counts`
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary `unsafe` block
[INFO] [stderr]    --> tests/memory_test.rs:133:5
[INFO] [stderr]     |
[INFO] [stderr] 133 |     unsafe {
[INFO] [stderr]     |     ^^^^^^ unnecessary `unsafe` block
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `ptr2`
[INFO] [stderr]    --> tests/memory_test.rs:145:13
[INFO] [stderr]     |
[INFO] [stderr] 145 |         let ptr2 = allocator.allocate(100).unwrap();
[INFO] [stderr]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_ptr2`
[INFO] [stderr] 
[INFO] [stderr] warning: constant `RECORD_SIZE` is never used
[INFO] [stderr]   --> examples/low_power_mode.rs:45:7
[INFO] [stderr]    |
[INFO] [stderr] 45 | const RECORD_SIZE: usize = 4 + 32 + 8 + 8;
[INFO] [stderr]    |       ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: constant `TABLE_DATA_SIZE` is never used
[INFO] [stderr]   --> examples/low_power_mode.rs:46:7
[INFO] [stderr]    |
[INFO] [stderr] 46 | const TABLE_DATA_SIZE: usize = RECORD_SIZE * TEST_TABLE.max_records;
[INFO] [stderr]    |       ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `STATUS_ARRAY_SIZE` is never used
[INFO] [stderr]   --> examples/low_power_mode.rs:47:7
[INFO] [stderr]    |
[INFO] [stderr] 47 | const STATUS_ARRAY_SIZE: usize = core::mem::size_of::<RecordHeader>() * TEST_TABLE.max_records;
[INFO] [stderr]    |       ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `FREE_SLOTS_SIZE` is never used
[INFO] [stderr]   --> examples/low_power_mode.rs:48:7
[INFO] [stderr]    |
[INFO] [stderr] 48 | const FREE_SLOTS_SIZE: usize = core::mem::size_of::<usize>() * TEST_TABLE.max_records;
[INFO] [stderr]    |       ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `TABLE_MEM_SIZE` is never used
[INFO] [stderr]   --> examples/low_power_mode.rs:49:7
[INFO] [stderr]    |
[INFO] [stderr] 49 | const TABLE_MEM_SIZE: usize = TABLE_DATA_SIZE + STATUS_ARRAY_SIZE + FREE_SLOTS_SIZE;
[INFO] [stderr]    |       ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]   --> examples/low_power_mode.rs:57:13
[INFO] [stderr]    |
[INFO] [stderr] 57 |             DB_MEMORY.as_mut_ptr(),
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]    |
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]    = 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] [stderr]    = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: creating a shared reference to mutable static
[INFO] [stderr]   --> examples/low_power_mode.rs:58:13
[INFO] [stderr]    |
[INFO] [stderr] 58 |             DB_MEMORY.len()
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stderr]    |
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]    = 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] [stderr] 
[INFO] [stderr] warning: unused import: `alloc::string::String`
[INFO] [stderr]  --> examples/export_example.rs:6:5
[INFO] [stderr]   |
[INFO] [stderr] 6 | use alloc::string::String;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `alloc::vec::Vec`
[INFO] [stderr]  --> examples/export_example.rs:7:5
[INFO] [stderr]   |
[INFO] [stderr] 7 | use alloc::vec::Vec;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: static `DB_MEMORY` is never used
[INFO] [stderr]   --> examples/export_example.rs:12:12
[INFO] [stderr]    |
[INFO] [stderr] 12 | static mut DB_MEMORY: [u8; 65536] = [0u8; 65536];
[INFO] [stderr]    |            ^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `DdlExecutor`
[INFO] [stderr]  --> examples/ddl_runtime_example.rs:3:20
[INFO] [stderr]   |
[INFO] [stderr] 3 | use remdb::{RemDb, DdlExecutor, types::{DataType, IndexType}};
[INFO] [stderr]   |                    ^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]   --> examples/ddl_runtime_example.rs:34:31
[INFO] [stderr]    |
[INFO] [stderr] 34 |         init_global_allocator(MEMORY_BUFFER.as_mut_ptr(), MEMORY_BUFFER.len())
[INFO] [stderr]    |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]    |
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]    = 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] [stderr]    = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: creating a shared reference to mutable static
[INFO] [stderr]   --> examples/ddl_runtime_example.rs:34:59
[INFO] [stderr]    |
[INFO] [stderr] 34 |         init_global_allocator(MEMORY_BUFFER.as_mut_ptr(), MEMORY_BUFFER.len())
[INFO] [stderr]    |                                                           ^^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stderr]    |
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]    = 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] [stderr] 
[INFO] [stderr] warning: unused import: `std::fs::File`
[INFO] [stderr]    --> tests/test_snapshot_gen.rs:137:13
[INFO] [stderr]     |
[INFO] [stderr] 137 |         use std::fs::File;
[INFO] [stderr]     |             ^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> tests/test_snapshot_gen.rs:285:13
[INFO] [stderr]     |
[INFO] [stderr] 285 |         let mut db = remdb::init_global_db(&TEST_DB_CONFIG)?;
[INFO] [stderr]     |             ----^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: static `TABLE_FREE_SLOTS_BUFFER` is never used
[INFO] [stderr]   --> tests/test_snapshot_gen.rs:73:12
[INFO] [stderr]    |
[INFO] [stderr] 73 | static mut TABLE_FREE_SLOTS_BUFFER: [usize; 100] = [0usize; 100];
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]   --> tests/test_snapshot_gen.rs:50:9
[INFO] [stderr]    |
[INFO] [stderr] 50 |         &mut DEFAULT_ALLOCATOR
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]    |
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]    = 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] [stderr]    = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stderr] help: use `&raw mut` instead to create a raw pointer
[INFO] [stderr]    |
[INFO] [stderr] 50 |         &raw mut DEFAULT_ALLOCATOR
[INFO] [stderr]    |          +++
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]    --> tests/test_snapshot_gen.rs:265:9
[INFO] [stderr]     |
[INFO] [stderr] 265 |         transaction::TX_MANAGER.reset();
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]     = 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] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]    --> tests/test_snapshot_gen.rs:271:9
[INFO] [stderr]     |
[INFO] [stderr] 271 |         TABLE_DATA_BUFFER.fill(0);
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]     = 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] [stderr] 
[INFO] [stderr] warning: unnecessary `unsafe` block
[INFO] [stderr]    --> tests/wal_test.rs:123:5
[INFO] [stderr]     |
[INFO] [stderr] 123 |     unsafe {
[INFO] [stderr]     |     ^^^^^^ unnecessary `unsafe` block
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary `unsafe` block
[INFO] [stderr]    --> tests/wal_test.rs:164:5
[INFO] [stderr]     |
[INFO] [stderr] 164 |     unsafe {
[INFO] [stderr]     |     ^^^^^^ unnecessary `unsafe` block
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary `unsafe` block
[INFO] [stderr]    --> tests/wal_test.rs:223:5
[INFO] [stderr]     |
[INFO] [stderr] 223 |     unsafe {
[INFO] [stderr]     |     ^^^^^^ unnecessary `unsafe` block
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary `unsafe` block
[INFO] [stderr]    --> tests/wal_test.rs:289:5
[INFO] [stderr]     |
[INFO] [stderr] 289 |     unsafe {
[INFO] [stderr]     |     ^^^^^^ unnecessary `unsafe` block
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary `unsafe` block
[INFO] [stderr]    --> tests/wal_test.rs:356:5
[INFO] [stderr]     |
[INFO] [stderr] 356 |     unsafe {
[INFO] [stderr]     |     ^^^^^^ unnecessary `unsafe` block
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary `unsafe` block
[INFO] [stderr]    --> tests/wal_test.rs:399:5
[INFO] [stderr]     |
[INFO] [stderr] 399 |     unsafe {
[INFO] [stderr]     |     ^^^^^^ unnecessary `unsafe` block
[INFO] [stderr] 
[INFO] [stderr] warning: `remdb` (test "ha_test") generated 2 warnings (run `cargo fix --test "ha_test" -p remdb` to apply 1 suggestion)
[INFO] [stderr] warning: `remdb` (test "sql_query_test") generated 8 warnings (run `cargo fix --test "sql_query_test" -p remdb` to apply 2 suggestions)
[INFO] [stderr] warning: `remdb` (example "ddl_full_example") generated 4 warnings
[INFO] [stderr] warning: `remdb` (example "describe_table") generated 4 warnings (run `cargo fix --example "describe_table" -p remdb` to apply 1 suggestion)
[INFO] [stderr] warning: `remdb` (example "ddl_example") generated 1 warning
[INFO] [stderr] warning: `remdb` (example "sql_query") generated 6 warnings (run `cargo fix --example "sql_query" -p remdb` to apply 3 suggestions)
[INFO] [stderr] warning: `remdb` (lib test) generated 75 warnings (75 duplicates)
[INFO] [stderr] warning: `remdb` (test "memory_test") generated 7 warnings (run `cargo fix --test "memory_test" -p remdb` to apply 5 suggestions)
[INFO] [stderr] warning: `remdb` (example "low_power_mode") generated 7 warnings
[INFO] [stderr] warning: `remdb` (example "export_example") generated 3 warnings (run `cargo fix --example "export_example" -p remdb` to apply 2 suggestions)
[INFO] [stderr] warning: `remdb` (example "ddl_runtime_example") generated 3 warnings
[INFO] [stderr] warning: `remdb` (test "test_snapshot_gen") generated 6 warnings (run `cargo fix --test "test_snapshot_gen" -p remdb` to apply 2 suggestions)
[INFO] [stderr] warning: `remdb` (test "wal_test") generated 6 warnings
[INFO] [stderr] warning: unnecessary `unsafe` block
[INFO] [stderr]    --> tests/dynamic_ddl_test.rs:130:5
[INFO] [stderr]     |
[INFO] [stderr] 130 |     unsafe {
[INFO] [stderr]     |     ^^^^^^ unnecessary `unsafe` block
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary `unsafe` block
[INFO] [stderr]    --> tests/dynamic_ddl_test.rs:182:5
[INFO] [stderr]     |
[INFO] [stderr] 182 |     unsafe {
[INFO] [stderr]     |     ^^^^^^ unnecessary `unsafe` block
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary `unsafe` block
[INFO] [stderr]    --> tests/dynamic_ddl_test.rs:266:5
[INFO] [stderr]     |
[INFO] [stderr] 266 |     unsafe {
[INFO] [stderr]     |     ^^^^^^ unnecessary `unsafe` block
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]   --> tests/dynamic_ddl_test.rs:16:27
[INFO] [stderr]    |
[INFO] [stderr] 16 |         memory_allocator: &mut DEFAULT_ALLOCATOR,
[INFO] [stderr]    |                           ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]    |
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]    = 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] [stderr]    = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stderr] help: use `&raw mut` instead to create a raw pointer
[INFO] [stderr]    |
[INFO] [stderr] 16 |         memory_allocator: &raw mut DEFAULT_ALLOCATOR,
[INFO] [stderr]    |                            +++
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]    --> tests/dynamic_ddl_test.rs:137:13
[INFO] [stderr]     |
[INFO] [stderr] 137 |             DB_MEMORY.as_mut_ptr(),
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]     = 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] [stderr] 
[INFO] [stderr] warning: creating a shared reference to mutable static
[INFO] [stderr]    --> tests/dynamic_ddl_test.rs:138:13
[INFO] [stderr]     |
[INFO] [stderr] 138 |             DB_MEMORY.len()
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]     = 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] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]    --> tests/dynamic_ddl_test.rs:189:13
[INFO] [stderr]     |
[INFO] [stderr] 189 |             DB_MEMORY.as_mut_ptr(),
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]     = 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] [stderr] 
[INFO] [stderr] warning: creating a shared reference to mutable static
[INFO] [stderr]    --> tests/dynamic_ddl_test.rs:190:13
[INFO] [stderr]     |
[INFO] [stderr] 190 |             DB_MEMORY.len()
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]     = 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] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]    --> tests/dynamic_ddl_test.rs:273:13
[INFO] [stderr]     |
[INFO] [stderr] 273 |             DB_MEMORY.as_mut_ptr(),
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]     = 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] [stderr] 
[INFO] [stderr] warning: creating a shared reference to mutable static
[INFO] [stderr]    --> tests/dynamic_ddl_test.rs:274:13
[INFO] [stderr]     |
[INFO] [stderr] 274 |             DB_MEMORY.len()
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]     = 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] [stderr] 
[INFO] [stderr] warning: `remdb` (test "dynamic_ddl_test") generated 10 warnings
[INFO] [stderr]     Finished `test` profile [optimized + debuginfo] target(s) in 0.26s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/remdb-ffc9ce4169f59c8e)
[INFO] [stdout] 
[INFO] [stdout] running 9 tests
[INFO] [stdout] test pubsub::crc32::tests::test_crc32_calculation ... ok
[INFO] [stdout] test pubsub::publisher::tests::test_create_frame ... ok
[INFO] [stdout] test pubsub::publisher::tests::test_create_heartbeat_frame ... ok
[INFO] [stdout] test pubsub::crc32::tests::test_crc32_verification ... ok
[INFO] [stdout] test pubsub::publisher::tests::test_handle_nack ... ok
[INFO] [stdout] test pubsub::subscriber::tests::test_cleanup_inactive ... ok
[INFO] [stdout] test pubsub::subscriber::tests::test_subscribe_unsubscribe ... ok
[INFO] [stdout] test pubsub::subscriber::tests::test_handle_data ... ok
[INFO] [stdout] test pubsub::publisher::tests::test_check_timeouts ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 9 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/dynamic_ddl_test.rs (/opt/rustwide/target/debug/deps/dynamic_ddl_test-f32985b6a87a9788)
[INFO] [stdout] 
[INFO] [stdout] running 4 tests
[INFO] [stdout] test test_create_table ... ok
[INFO] [stdout] test test_create_index ... ok
[INFO] [stdout] test test_describe_table ... ok
[INFO] [stdout] test test_create_table_invalid ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/export_test.rs (/opt/rustwide/target/debug/deps/export_test-f0753d46371d2948)
[INFO] [stdout] 
[INFO] [stdout] running 3 tests
[INFO] [stdout] test test_export_data ... FAILED
[INFO] [stdout] test test_export_empty_table ... FAILED
[INFO] [stderr] error: test failed, to rerun pass `--test export_test`
[INFO] [stdout] test test_export_ddl ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- test_export_data stdout ----
[INFO] [stdout] DEBUG: TEST_TABLE.record_size = 48
[INFO] [stdout] DEBUG: Number of fields = 5
[INFO] [stdout] DEBUG: Field 0 - name: id, offset: 0, size: 4
[INFO] [stdout] DEBUG: Field 1 - name: name, offset: 4, size: 32
[INFO] [stdout] DEBUG: Field 2 - name: age, offset: 36, size: 1
[INFO] [stdout] DEBUG: Field 3 - name: active, offset: 37, size: 1
[INFO] [stdout] DEBUG: Field 4 - name: created_at, offset: 40, size: 8
[INFO] [stdout] DEBUG: record1 len = 48, capacity = 48
[INFO] [stdout] DEBUG: Set id = 1
[INFO] [stdout] DEBUG: Set name = Test User
[INFO] [stdout] DEBUG: Set age = 25
[INFO] [stdout] DEBUG: Set active = true
[INFO] [stdout] DEBUG: Set created_at = 1234567890
[INFO] [stdout] 
[INFO] [stdout] thread 'test_export_data' (40) panicked at tests/export_test.rs:166:5:
[INFO] [stdout] Failed to export data
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5625200c9a22 - std[3f03f8b59f91bef1]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5625200c9a22 - std[3f03f8b59f91bef1]::backtrace_rs::backtrace::trace_unsynchronized::<std[3f03f8b59f91bef1]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5625200c9a22 - std[3f03f8b59f91bef1]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x5625200c9a22 - <<std[3f03f8b59f91bef1]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[585f66e14d78f9ba]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x5625200e03ba - <core[585f66e14d78f9ba]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5625200e03ba - core[585f66e14d78f9ba]::fmt::write
[INFO] [stdout]    6:     0x5625200ce896 - std[3f03f8b59f91bef1]::io::default_write_fmt::<alloc[15e7b27aba85d2e2]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5625200ce896 - <alloc[15e7b27aba85d2e2]::vec::Vec<u8> as std[3f03f8b59f91bef1]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x5625200a7acf - <std[3f03f8b59f91bef1]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x5625200a7acf - std[3f03f8b59f91bef1]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5625200c1949 - std[3f03f8b59f91bef1]::panicking::default_hook
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x56252003cfce - <alloc[15e7b27aba85d2e2]::boxed::Box<dyn for<'a, 'b> core[585f66e14d78f9ba]::ops::function::Fn<(&'a std[3f03f8b59f91bef1]::panic::PanicHookInfo<'b>,), Output = ()> + core[585f66e14d78f9ba]::marker::Sync + core[585f66e14d78f9ba]::marker::Send> as core[585f66e14d78f9ba]::ops::function::Fn<(&std[3f03f8b59f91bef1]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x56252003cfce - test[30224e0cb089acd2]::test_main_with_exit_callback::<test[30224e0cb089acd2]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5625200c1b02 - <alloc[15e7b27aba85d2e2]::boxed::Box<dyn for<'a, 'b> core[585f66e14d78f9ba]::ops::function::Fn<(&'a std[3f03f8b59f91bef1]::panic::PanicHookInfo<'b>,), Output = ()> + core[585f66e14d78f9ba]::marker::Sync + core[585f66e14d78f9ba]::marker::Send> as core[585f66e14d78f9ba]::ops::function::Fn<(&std[3f03f8b59f91bef1]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x5625200c1b02 - std[3f03f8b59f91bef1]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5625200a7bba - std[3f03f8b59f91bef1]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panicking.rs:691:13
[INFO] [stdout]   16:     0x56252009ccc9 - std[3f03f8b59f91bef1]::sys::backtrace::__rust_end_short_backtrace::<std[3f03f8b59f91bef1]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x5625200a89dd - __rustc[caa99d26c7bae192]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5625200e0a8c - core[585f66e14d78f9ba]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5625200308f6 - export_test[9e2b05bdf7532f1f]::test_export_data::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/export_test.rs:166:5
[INFO] [stdout]   20:     0x5625200308f6 - <export_test[9e2b05bdf7532f1f]::test_export_data::{closure#0} as core[585f66e14d78f9ba]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   21:     0x5625200701bc - serial_test[980f25eddc9f9188]::serial_code_lock::local_serial_core
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serial_test-3.2.0/src/serial_code_lock.rs:36:5
[INFO] [stdout]   22:     0x56252002fc2d - export_test[9e2b05bdf7532f1f]::test_export_data
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/export_test.rs:91:1
[INFO] [stdout]   23:     0x56252002fc2d - export_test[9e2b05bdf7532f1f]::test_export_data::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/export_test.rs:92:22
[INFO] [stdout]   24:     0x56252002fc2d - <export_test[9e2b05bdf7532f1f]::test_export_data::{closure#0} as core[585f66e14d78f9ba]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x56252003137b - <fn() -> core[585f66e14d78f9ba]::result::Result<(), alloc[15e7b27aba85d2e2]::string::String> as core[585f66e14d78f9ba]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x56252003137b - test[30224e0cb089acd2]::__rust_begin_short_backtrace::<core[585f66e14d78f9ba]::result::Result<(), alloc[15e7b27aba85d2e2]::string::String>, fn() -> core[585f66e14d78f9ba]::result::Result<(), alloc[15e7b27aba85d2e2]::string::String>>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/test/src/lib.rs:663:18
[INFO] [stdout]   27:     0x56252003dbda - test[30224e0cb089acd2]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/test/src/lib.rs:686:74
[INFO] [stdout]   28:     0x56252003dbda - <core[585f66e14d78f9ba]::panic::unwind_safe::AssertUnwindSafe<test[30224e0cb089acd2]::run_test_in_process::{closure#0}> as core[585f66e14d78f9ba]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   29:     0x56252003dbda - std[3f03f8b59f91bef1]::panicking::catch_unwind::do_call::<core[585f66e14d78f9ba]::panic::unwind_safe::AssertUnwindSafe<test[30224e0cb089acd2]::run_test_in_process::{closure#0}>, core[585f66e14d78f9ba]::result::Result<(), alloc[15e7b27aba85d2e2]::string::String>>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panicking.rs:581:40
[INFO] [stdout]   30:     0x56252003dbda - std[3f03f8b59f91bef1]::panicking::catch_unwind::<core[585f66e14d78f9ba]::result::Result<(), alloc[15e7b27aba85d2e2]::string::String>, core[585f66e14d78f9ba]::panic::unwind_safe::AssertUnwindSafe<test[30224e0cb089acd2]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panicking.rs:544:19
[INFO] [stdout]   31:     0x56252003dbda - std[3f03f8b59f91bef1]::panic::catch_unwind::<core[585f66e14d78f9ba]::panic::unwind_safe::AssertUnwindSafe<test[30224e0cb089acd2]::run_test_in_process::{closure#0}>, core[585f66e14d78f9ba]::result::Result<(), alloc[15e7b27aba85d2e2]::string::String>>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panic.rs:359:14
[INFO] [stdout]   32:     0x56252003dbda - test[30224e0cb089acd2]::run_test_in_process
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/test/src/lib.rs:686:27
[INFO] [stdout]   33:     0x56252003dbda - test[30224e0cb089acd2]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/test/src/lib.rs:607:43
[INFO] [stdout]   34:     0x5625200380a4 - test[30224e0cb089acd2]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/test/src/lib.rs:637:41
[INFO] [stdout]   35:     0x5625200380a4 - std[3f03f8b59f91bef1]::sys::backtrace::__rust_begin_short_backtrace::<test[30224e0cb089acd2]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   36:     0x5625200406d2 - std[3f03f8b59f91bef1]::thread::lifecycle::spawn_unchecked::<test[30224e0cb089acd2]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   37:     0x5625200406d2 - <core[585f66e14d78f9ba]::panic::unwind_safe::AssertUnwindSafe<std[3f03f8b59f91bef1]::thread::lifecycle::spawn_unchecked<test[30224e0cb089acd2]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[585f66e14d78f9ba]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   38:     0x5625200406d2 - std[3f03f8b59f91bef1]::panicking::catch_unwind::do_call::<core[585f66e14d78f9ba]::panic::unwind_safe::AssertUnwindSafe<std[3f03f8b59f91bef1]::thread::lifecycle::spawn_unchecked<test[30224e0cb089acd2]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panicking.rs:581:40
[INFO] [stdout]   39:     0x5625200406d2 - std[3f03f8b59f91bef1]::panicking::catch_unwind::<(), core[585f66e14d78f9ba]::panic::unwind_safe::AssertUnwindSafe<std[3f03f8b59f91bef1]::thread::lifecycle::spawn_unchecked<test[30224e0cb089acd2]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panicking.rs:544:19
[INFO] [stdout]   40:     0x5625200406d2 - std[3f03f8b59f91bef1]::panic::catch_unwind::<core[585f66e14d78f9ba]::panic::unwind_safe::AssertUnwindSafe<std[3f03f8b59f91bef1]::thread::lifecycle::spawn_unchecked<test[30224e0cb089acd2]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panic.rs:359:14
[INFO] [stdout]   41:     0x5625200406d2 - std[3f03f8b59f91bef1]::thread::lifecycle::spawn_unchecked::<test[30224e0cb089acd2]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   42:     0x5625200406d2 - <std[3f03f8b59f91bef1]::thread::lifecycle::spawn_unchecked<test[30224e0cb089acd2]::run_test::{closure#1}, ()>::{closure#1} as core[585f66e14d78f9ba]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   43:     0x5625200c918f - <alloc[15e7b27aba85d2e2]::boxed::Box<dyn core[585f66e14d78f9ba]::ops::function::FnOnce<(), Output = ()> + core[585f66e14d78f9ba]::marker::Send> as core[585f66e14d78f9ba]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   44:     0x5625200c918f - <std[3f03f8b59f91bef1]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/sys/thread/unix.rs:119:17
[INFO] [stdout]   45:     0x7cd281e5baa4 - <unknown>
[INFO] [stdout]   46:     0x7cd281ee8a64 - clone
[INFO] [stdout]   47:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- test_export_empty_table stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'test_export_empty_table' (42) panicked at tests/export_test.rs:214:5:
[INFO] [stdout] Failed to export DDL for empty table
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5625200c9a22 - std[3f03f8b59f91bef1]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5625200c9a22 - std[3f03f8b59f91bef1]::backtrace_rs::backtrace::trace_unsynchronized::<std[3f03f8b59f91bef1]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5625200c9a22 - std[3f03f8b59f91bef1]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x5625200c9a22 - <<std[3f03f8b59f91bef1]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[585f66e14d78f9ba]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x5625200e03ba - <core[585f66e14d78f9ba]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5625200e03ba - core[585f66e14d78f9ba]::fmt::write
[INFO] [stdout]    6:     0x5625200ce896 - std[3f03f8b59f91bef1]::io::default_write_fmt::<alloc[15e7b27aba85d2e2]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5625200ce896 - <alloc[15e7b27aba85d2e2]::vec::Vec<u8> as std[3f03f8b59f91bef1]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x5625200a7acf - <std[3f03f8b59f91bef1]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x5625200a7acf - std[3f03f8b59f91bef1]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5625200c1949 - std[3f03f8b59f91bef1]::panicking::default_hook
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x56252003cfce - <alloc[15e7b27aba85d2e2]::boxed::Box<dyn for<'a, 'b> core[585f66e14d78f9ba]::ops::function::Fn<(&'a std[3f03f8b59f91bef1]::panic::PanicHookInfo<'b>,), Output = ()> + core[585f66e14d78f9ba]::marker::Sync + core[585f66e14d78f9ba]::marker::Send> as core[585f66e14d78f9ba]::ops::function::Fn<(&std[3f03f8b59f91bef1]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x56252003cfce - test[30224e0cb089acd2]::test_main_with_exit_callback::<test[30224e0cb089acd2]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5625200c1b02 - <alloc[15e7b27aba85d2e2]::boxed::Box<dyn for<'a, 'b> core[585f66e14d78f9ba]::ops::function::Fn<(&'a std[3f03f8b59f91bef1]::panic::PanicHookInfo<'b>,), Output = ()> + core[585f66e14d78f9ba]::marker::Sync + core[585f66e14d78f9ba]::marker::Send> as core[585f66e14d78f9ba]::ops::function::Fn<(&std[3f03f8b59f91bef1]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x5625200c1b02 - std[3f03f8b59f91bef1]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5625200a7bba - std[3f03f8b59f91bef1]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panicking.rs:691:13
[INFO] [stdout]   16:     0x56252009ccc9 - std[3f03f8b59f91bef1]::sys::backtrace::__rust_end_short_backtrace::<std[3f03f8b59f91bef1]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x5625200a89dd - __rustc[caa99d26c7bae192]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5625200e0a8c - core[585f66e14d78f9ba]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5625200310d9 - export_test[9e2b05bdf7532f1f]::test_export_empty_table::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/export_test.rs:214:5
[INFO] [stdout]   20:     0x5625200310d9 - <export_test[9e2b05bdf7532f1f]::test_export_empty_table::{closure#0} as core[585f66e14d78f9ba]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   21:     0x5625200701bc - serial_test[980f25eddc9f9188]::serial_code_lock::local_serial_core
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serial_test-3.2.0/src/serial_code_lock.rs:36:5
[INFO] [stdout]   22:     0x56252002fcbd - export_test[9e2b05bdf7532f1f]::test_export_empty_table
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/export_test.rs:192:1
[INFO] [stdout]   23:     0x56252002fcbd - export_test[9e2b05bdf7532f1f]::test_export_empty_table::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/export_test.rs:193:29
[INFO] [stdout]   24:     0x56252002fcbd - <export_test[9e2b05bdf7532f1f]::test_export_empty_table::{closure#0} as core[585f66e14d78f9ba]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x56252003137b - <fn() -> core[585f66e14d78f9ba]::result::Result<(), alloc[15e7b27aba85d2e2]::string::String> as core[585f66e14d78f9ba]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x56252003137b - test[30224e0cb089acd2]::__rust_begin_short_backtrace::<core[585f66e14d78f9ba]::result::Result<(), alloc[15e7b27aba85d2e2]::string::String>, fn() -> core[585f66e14d78f9ba]::result::Result<(), alloc[15e7b27aba85d2e2]::string::String>>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/test/src/lib.rs:663:18
[INFO] [stdout]   27:     0x56252003dbda - test[30224e0cb089acd2]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/test/src/lib.rs:686:74
[INFO] [stdout]   28:     0x56252003dbda - <core[585f66e14d78f9ba]::panic::unwind_safe::AssertUnwindSafe<test[30224e0cb089acd2]::run_test_in_process::{closure#0}> as core[585f66e14d78f9ba]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   29:     0x56252003dbda - std[3f03f8b59f91bef1]::panicking::catch_unwind::do_call::<core[585f66e14d78f9ba]::panic::unwind_safe::AssertUnwindSafe<test[30224e0cb089acd2]::run_test_in_process::{closure#0}>, core[585f66e14d78f9ba]::result::Result<(), alloc[15e7b27aba85d2e2]::string::String>>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panicking.rs:581:40
[INFO] [stdout]   30:     0x56252003dbda - std[3f03f8b59f91bef1]::panicking::catch_unwind::<core[585f66e14d78f9ba]::result::Result<(), alloc[15e7b27aba85d2e2]::string::String>, core[585f66e14d78f9ba]::panic::unwind_safe::AssertUnwindSafe<test[30224e0cb089acd2]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panicking.rs:544:19
[INFO] [stdout]   31:     0x56252003dbda - std[3f03f8b59f91bef1]::panic::catch_unwind::<core[585f66e14d78f9ba]::panic::unwind_safe::AssertUnwindSafe<test[30224e0cb089acd2]::run_test_in_process::{closure#0}>, core[585f66e14d78f9ba]::result::Result<(), alloc[15e7b27aba85d2e2]::string::String>>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panic.rs:359:14
[INFO] [stdout]   32:     0x56252003dbda - test[30224e0cb089acd2]::run_test_in_process
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/test/src/lib.rs:686:27
[INFO] [stdout]   33:     0x56252003dbda - test[30224e0cb089acd2]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/test/src/lib.rs:607:43
[INFO] [stdout]   34:     0x5625200380a4 - test[30224e0cb089acd2]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/test/src/lib.rs:637:41
[INFO] [stdout]   35:     0x5625200380a4 - std[3f03f8b59f91bef1]::sys::backtrace::__rust_begin_short_backtrace::<test[30224e0cb089acd2]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   36:     0x5625200406d2 - std[3f03f8b59f91bef1]::thread::lifecycle::spawn_unchecked::<test[30224e0cb089acd2]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   37:     0x5625200406d2 - <core[585f66e14d78f9ba]::panic::unwind_safe::AssertUnwindSafe<std[3f03f8b59f91bef1]::thread::lifecycle::spawn_unchecked<test[30224e0cb089acd2]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[585f66e14d78f9ba]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   38:     0x5625200406d2 - std[3f03f8b59f91bef1]::panicking::catch_unwind::do_call::<core[585f66e14d78f9ba]::panic::unwind_safe::AssertUnwindSafe<std[3f03f8b59f91bef1]::thread::lifecycle::spawn_unchecked<test[30224e0cb089acd2]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panicking.rs:581:40
[INFO] [stdout]   39:     0x5625200406d2 - std[3f03f8b59f91bef1]::panicking::catch_unwind::<(), core[585f66e14d78f9ba]::panic::unwind_safe::AssertUnwindSafe<std[3f03f8b59f91bef1]::thread::lifecycle::spawn_unchecked<test[30224e0cb089acd2]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panicking.rs:544:19
[INFO] [stdout]   40:     0x5625200406d2 - std[3f03f8b59f91bef1]::panic::catch_unwind::<core[585f66e14d78f9ba]::panic::unwind_safe::AssertUnwindSafe<std[3f03f8b59f91bef1]::thread::lifecycle::spawn_unchecked<test[30224e0cb089acd2]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panic.rs:359:14
[INFO] [stdout]   41:     0x5625200406d2 - std[3f03f8b59f91bef1]::thread::lifecycle::spawn_unchecked::<test[30224e0cb089acd2]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   42:     0x5625200406d2 - <std[3f03f8b59f91bef1]::thread::lifecycle::spawn_unchecked<test[30224e0cb089acd2]::run_test::{closure#1}, ()>::{closure#1} as core[585f66e14d78f9ba]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   43:     0x5625200c918f - <alloc[15e7b27aba85d2e2]::boxed::Box<dyn core[585f66e14d78f9ba]::ops::function::FnOnce<(), Output = ()> + core[585f66e14d78f9ba]::marker::Send> as core[585f66e14d78f9ba]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   44:     0x5625200c918f - <std[3f03f8b59f91bef1]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/sys/thread/unix.rs:119:17
[INFO] [stdout]   45:     0x7cd281e5baa4 - <unknown>
[INFO] [stdout]   46:     0x7cd281ee8a64 - clone
[INFO] [stdout]   47:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- test_export_ddl stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'test_export_ddl' (41) panicked at tests/export_test.rs:60:5:
[INFO] [stdout] Failed to export DDL
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5625200c9a22 - std[3f03f8b59f91bef1]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5625200c9a22 - std[3f03f8b59f91bef1]::backtrace_rs::backtrace::trace_unsynchronized::<std[3f03f8b59f91bef1]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5625200c9a22 - std[3f03f8b59f91bef1]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x5625200c9a22 - <<std[3f03f8b59f91bef1]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[585f66e14d78f9ba]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x5625200e03ba - <core[585f66e14d78f9ba]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5625200e03ba - core[585f66e14d78f9ba]::fmt::write
[INFO] [stdout]    6:     0x5625200ce896 - std[3f03f8b59f91bef1]::io::default_write_fmt::<alloc[15e7b27aba85d2e2]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5625200ce896 - <alloc[15e7b27aba85d2e2]::vec::Vec<u8> as std[3f03f8b59f91bef1]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x5625200a7acf - <std[3f03f8b59f91bef1]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x5625200a7acf - std[3f03f8b59f91bef1]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5625200c1949 - std[3f03f8b59f91bef1]::panicking::default_hook
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x56252003cfce - <alloc[15e7b27aba85d2e2]::boxed::Box<dyn for<'a, 'b> core[585f66e14d78f9ba]::ops::function::Fn<(&'a std[3f03f8b59f91bef1]::panic::PanicHookInfo<'b>,), Output = ()> + core[585f66e14d78f9ba]::marker::Sync + core[585f66e14d78f9ba]::marker::Send> as core[585f66e14d78f9ba]::ops::function::Fn<(&std[3f03f8b59f91bef1]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x56252003cfce - test[30224e0cb089acd2]::test_main_with_exit_callback::<test[30224e0cb089acd2]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5625200c1b02 - <alloc[15e7b27aba85d2e2]::boxed::Box<dyn for<'a, 'b> core[585f66e14d78f9ba]::ops::function::Fn<(&'a std[3f03f8b59f91bef1]::panic::PanicHookInfo<'b>,), Output = ()> + core[585f66e14d78f9ba]::marker::Sync + core[585f66e14d78f9ba]::marker::Send> as core[585f66e14d78f9ba]::ops::function::Fn<(&std[3f03f8b59f91bef1]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x5625200c1b02 - std[3f03f8b59f91bef1]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5625200a7bba - std[3f03f8b59f91bef1]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panicking.rs:691:13
[INFO] [stdout]   16:     0x56252009ccc9 - std[3f03f8b59f91bef1]::sys::backtrace::__rust_end_short_backtrace::<std[3f03f8b59f91bef1]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x5625200a89dd - __rustc[caa99d26c7bae192]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5625200e0a8c - core[585f66e14d78f9ba]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x56252002ffd0 - export_test[9e2b05bdf7532f1f]::test_export_ddl::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/export_test.rs:60:5
[INFO] [stdout]   20:     0x56252002ffd0 - <export_test[9e2b05bdf7532f1f]::test_export_ddl::{closure#0} as core[585f66e14d78f9ba]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   21:     0x5625200701bc - serial_test[980f25eddc9f9188]::serial_code_lock::local_serial_core
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serial_test-3.2.0/src/serial_code_lock.rs:36:5
[INFO] [stdout]   22:     0x56252002fb9d - export_test[9e2b05bdf7532f1f]::test_export_ddl
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/export_test.rs:38:1
[INFO] [stdout]   23:     0x56252002fb9d - export_test[9e2b05bdf7532f1f]::test_export_ddl::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/export_test.rs:39:21
[INFO] [stdout]   24:     0x56252002fb9d - <export_test[9e2b05bdf7532f1f]::test_export_ddl::{closure#0} as core[585f66e14d78f9ba]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x56252003137b - <fn() -> core[585f66e14d78f9ba]::result::Result<(), alloc[15e7b27aba85d2e2]::string::String> as core[585f66e14d78f9ba]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x56252003137b - test[30224e0cb089acd2]::__rust_begin_short_backtrace::<core[585f66e14d78f9ba]::result::Result<(), alloc[15e7b27aba85d2e2]::string::String>, fn() -> core[585f66e14d78f9ba]::result::Result<(), alloc[15e7b27aba85d2e2]::string::String>>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/test/src/lib.rs:663:18
[INFO] [stdout]   27:     0x56252003dbda - test[30224e0cb089acd2]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/test/src/lib.rs:686:74
[INFO] [stdout]   28:     0x56252003dbda - <core[585f66e14d78f9ba]::panic::unwind_safe::AssertUnwindSafe<test[30224e0cb089acd2]::run_test_in_process::{closure#0}> as core[585f66e14d78f9ba]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   29:     0x56252003dbda - std[3f03f8b59f91bef1]::panicking::catch_unwind::do_call::<core[585f66e14d78f9ba]::panic::unwind_safe::AssertUnwindSafe<test[30224e0cb089acd2]::run_test_in_process::{closure#0}>, core[585f66e14d78f9ba]::result::Result<(), alloc[15e7b27aba85d2e2]::string::String>>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panicking.rs:581:40
[INFO] [stdout]   30:     0x56252003dbda - std[3f03f8b59f91bef1]::panicking::catch_unwind::<core[585f66e14d78f9ba]::result::Result<(), alloc[15e7b27aba85d2e2]::string::String>, core[585f66e14d78f9ba]::panic::unwind_safe::AssertUnwindSafe<test[30224e0cb089acd2]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panicking.rs:544:19
[INFO] [stdout]   31:     0x56252003dbda - std[3f03f8b59f91bef1]::panic::catch_unwind::<core[585f66e14d78f9ba]::panic::unwind_safe::AssertUnwindSafe<test[30224e0cb089acd2]::run_test_in_process::{closure#0}>, core[585f66e14d78f9ba]::result::Result<(), alloc[15e7b27aba85d2e2]::string::String>>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panic.rs:359:14
[INFO] [stdout]   32:     0x56252003dbda - test[30224e0cb089acd2]::run_test_in_process
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/test/src/lib.rs:686:27
[INFO] [stdout]   33:     0x56252003dbda - test[30224e0cb089acd2]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/test/src/lib.rs:607:43
[INFO] [stdout]   34:     0x5625200380a4 - test[30224e0cb089acd2]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/test/src/lib.rs:637:41
[INFO] [stdout]   35:     0x5625200380a4 - std[3f03f8b59f91bef1]::sys::backtrace::__rust_begin_short_backtrace::<test[30224e0cb089acd2]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   36:     0x5625200406d2 - std[3f03f8b59f91bef1]::thread::lifecycle::spawn_unchecked::<test[30224e0cb089acd2]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   37:     0x5625200406d2 - <core[585f66e14d78f9ba]::panic::unwind_safe::AssertUnwindSafe<std[3f03f8b59f91bef1]::thread::lifecycle::spawn_unchecked<test[30224e0cb089acd2]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[585f66e14d78f9ba]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   38:     0x5625200406d2 - std[3f03f8b59f91bef1]::panicking::catch_unwind::do_call::<core[585f66e14d78f9ba]::panic::unwind_safe::AssertUnwindSafe<std[3f03f8b59f91bef1]::thread::lifecycle::spawn_unchecked<test[30224e0cb089acd2]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panicking.rs:581:40
[INFO] [stdout]   39:     0x5625200406d2 - std[3f03f8b59f91bef1]::panicking::catch_unwind::<(), core[585f66e14d78f9ba]::panic::unwind_safe::AssertUnwindSafe<std[3f03f8b59f91bef1]::thread::lifecycle::spawn_unchecked<test[30224e0cb089acd2]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panicking.rs:544:19
[INFO] [stdout]   40:     0x5625200406d2 - std[3f03f8b59f91bef1]::panic::catch_unwind::<core[585f66e14d78f9ba]::panic::unwind_safe::AssertUnwindSafe<std[3f03f8b59f91bef1]::thread::lifecycle::spawn_unchecked<test[30224e0cb089acd2]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panic.rs:359:14
[INFO] [stdout]   41:     0x5625200406d2 - std[3f03f8b59f91bef1]::thread::lifecycle::spawn_unchecked::<test[30224e0cb089acd2]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   42:     0x5625200406d2 - <std[3f03f8b59f91bef1]::thread::lifecycle::spawn_unchecked<test[30224e0cb089acd2]::run_test::{closure#1}, ()>::{closure#1} as core[585f66e14d78f9ba]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   43:     0x5625200c918f - <alloc[15e7b27aba85d2e2]::boxed::Box<dyn core[585f66e14d78f9ba]::ops::function::FnOnce<(), Output = ()> + core[585f66e14d78f9ba]::marker::Send> as core[585f66e14d78f9ba]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   44:     0x5625200c918f - <std[3f03f8b59f91bef1]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/sys/thread/unix.rs:119:17
[INFO] [stdout]   45:     0x7cd281e5baa4 - <unknown>
[INFO] [stdout]   46:     0x7cd281ee8a64 - clone
[INFO] [stdout]   47:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     test_export_data
[INFO] [stdout]     test_export_ddl
[INFO] [stdout]     test_export_empty_table
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 0 passed; 3 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "ca9feb3d5f7c5e8f3bf000fae606b02d503b0598e09b9ef9c0e7a970c5f39c24", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ca9feb3d5f7c5e8f3bf000fae606b02d503b0598e09b9ef9c0e7a970c5f39c24", kill_on_drop: false }`
[INFO] [stdout] ca9feb3d5f7c5e8f3bf000fae606b02d503b0598e09b9ef9c0e7a970c5f39c24
