[INFO] cloning repository https://github.com/cypppper/fosterbtree
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/cypppper/fosterbtree" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcypppper%2Ffosterbtree", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcypppper%2Ffosterbtree'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] b851ca3c94f000b593b7aa9d2a5d29b1481c78f1
[INFO] testing cypppper/fosterbtree against try#db823df02fd0c2cf67b43025ac3fef3f2d743245 for pr-150681
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcypppper%2Ffosterbtree" "/workspace/builds/worker-6-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc2/source'...
[INFO] [stderr] done.
[INFO] removed /workspace/builds/worker-6-tc2/source/.cargo/config.toml
[INFO] started tweaking git repo https://github.com/cypppper/fosterbtree
[INFO] finished tweaking git repo https://github.com/cypppper/fosterbtree
[INFO] tweaked toml for git repo https://github.com/cypppper/fosterbtree written to /workspace/builds/worker-6-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/cypppper/fosterbtree 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 git repo https://github.com/cypppper/fosterbtree 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-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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] 22ee5acfb308a5e4c12989a67c824b1fa5c36fcf8158d23eca5627abf49e4dca
[INFO] running `Command { std: "docker" "start" "-a" "22ee5acfb308a5e4c12989a67c824b1fa5c36fcf8158d23eca5627abf49e4dca", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "22ee5acfb308a5e4c12989a67c824b1fa5c36fcf8158d23eca5627abf49e4dca", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "22ee5acfb308a5e4c12989a67c824b1fa5c36fcf8158d23eca5627abf49e4dca", kill_on_drop: false }`
[INFO] [stdout] 22ee5acfb308a5e4c12989a67c824b1fa5c36fcf8158d23eca5627abf49e4dca
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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] df8b12bf901335ef875fa4dbf8ea066792369ecf190ef7a76fdf6724543d6b3a
[INFO] running `Command { std: "docker" "start" "-a" "df8b12bf901335ef875fa4dbf8ea066792369ecf190ef7a76fdf6724543d6b3a", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.92
[INFO] [stderr]    Compiling unicode-ident v1.0.14
[INFO] [stderr]    Compiling libc v0.2.164
[INFO] [stderr]    Compiling autocfg v1.4.0
[INFO] [stderr]    Compiling memchr v2.7.4
[INFO] [stderr]    Compiling libm v0.2.15
[INFO] [stderr]    Compiling parking_lot_core v0.9.10
[INFO] [stderr]    Compiling crossbeam-utils v0.8.20
[INFO] [stderr]    Compiling pkg-config v0.3.31
[INFO] [stderr]    Compiling utf8parse v0.2.2
[INFO] [stderr]    Compiling smallvec v1.13.2
[INFO] [stderr]    Compiling colorchoice v1.0.3
[INFO] [stderr]    Compiling cc v1.2.1
[INFO] [stderr]    Compiling rustix v0.38.41
[INFO] [stderr]    Compiling anstyle v1.0.10
[INFO] [stderr]    Compiling bytemuck v1.20.0
[INFO] [stderr]    Compiling serde v1.0.215
[INFO] [stderr]    Compiling anstyle-parse v0.2.6
[INFO] [stderr]    Compiling is_terminal_polyfill v1.70.1
[INFO] [stderr]    Compiling anstyle-query v1.1.2
[INFO] [stderr]    Compiling itoa v1.0.13
[INFO] [stderr]    Compiling safe_arch v0.7.2
[INFO] [stderr]    Compiling once_cell v1.20.2
[INFO] [stderr]    Compiling aho-corasick v1.1.3
[INFO] [stderr]    Compiling clap_lex v0.7.3
[INFO] [stderr]    Compiling bitflags v2.6.0
[INFO] [stderr]    Compiling anyhow v1.0.93
[INFO] [stderr]    Compiling strsim v0.11.1
[INFO] [stderr]    Compiling anstream v0.6.18
[INFO] [stderr]    Compiling heck v0.5.0
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling quote v1.0.37
[INFO] [stderr]    Compiling syn v2.0.89
[INFO] [stderr]    Compiling lock_api v0.4.12
[INFO] [stderr]    Compiling memoffset v0.9.1
[INFO] [stderr]    Compiling linux-raw-sys v0.4.14
[INFO] [stderr]    Compiling regex-syntax v0.8.5
[INFO] [stderr]    Compiling clap_builder v4.5.21
[INFO] [stderr]    Compiling wide v0.7.30
[INFO] [stderr]    Compiling csv-core v0.1.11
[INFO] [stderr]    Compiling arrayvec v0.7.6
[INFO] [stderr]    Compiling fastrand v2.2.0
[INFO] [stderr]    Compiling ryu v1.0.18
[INFO] [stderr]    Compiling siphasher v1.0.1
[INFO] [stderr]    Compiling iana-time-zone v0.1.61
[INFO] [stderr]    Compiling hashbrown v0.14.5
[INFO] [stderr]    Compiling num-format v0.4.4
[INFO] [stderr]    Compiling concurrent-queue v2.5.0
[INFO] [stderr]    Compiling getrandom v0.2.15
[INFO] [stderr]    Compiling farmhash v1.1.5
[INFO] [stderr]    Compiling lazy_static v1.5.0
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling rpmalloc-sys v0.2.3+b097fd0
[INFO] [stderr]    Compiling parking_lot v0.12.3
[INFO] [stderr]    Compiling dashmap v6.1.0
[INFO] [stderr]    Compiling chrono v0.4.38
[INFO] [stderr]    Compiling regex-automata v0.4.9
[INFO] [stderr]    Compiling rpmalloc v0.2.2
[INFO] [stderr]    Compiling tempfile v3.14.0
[INFO] [stderr]    Compiling zerocopy-derive v0.7.35
[INFO] [stderr]    Compiling serde_derive v1.0.215
[INFO] [stderr]    Compiling clap_derive v4.5.18
[INFO] [stderr]    Compiling zerocopy v0.7.35
[INFO] [stderr]    Compiling regex v1.11.1
[INFO] [stderr]    Compiling ppv-lite86 v0.2.20
[INFO] [stderr]    Compiling clap v4.5.21
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling rand_distr v0.4.3
[INFO] [stderr]    Compiling fastbloom v0.7.1
[INFO] [stderr]    Compiling zipf v7.0.1
[INFO] [stderr]    Compiling csv v1.3.1
[INFO] [stderr]    Compiling fbtree v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `AtomicUsize`
[INFO] [stdout]  --> src/access_method/fbt/foster_btree.rs:7:18
[INFO] [stdout]   |
[INFO] [stdout] 7 |         atomic::{AtomicUsize, Ordering},
[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: `AtomicU64`, `Duration`, `Instant`, and `Ordering`
[INFO] [stdout]  --> src/mvcc_index/dual_heap_hash/chained_hash_bucket_second.rs:4:18
[INFO] [stdout]   |
[INFO] [stdout] 4 |         atomic::{AtomicU64, Ordering},
[INFO] [stdout]   |                  ^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 7 |     time::{Duration, Instant},
[INFO] [stdout]   |            ^^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `FrameReadGuard`, `MemPoolStatus`, `PageFrameKey`, `TxId`, `fix_frame_id2`, `log_debug`, `log_info`, `log_warn`, and `write_page`
[INFO] [stdout]   --> src/mvcc_index/dual_heap_hash/chained_hash_bucket_second.rs:11:24
[INFO] [stdout]    |
[INFO] [stdout] 11 |     bp::{ContainerKey, FrameReadGuard, MemPool, MemPoolStatus, PageFrameKey},
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^           ^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 12 |     log_debug, log_info, log_warn,
[INFO] [stdout]    |     ^^^^^^^^^  ^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 13 |     mvcc_index::{
[INFO] [stdout] 14 |         hash_common::{fix_frame_id2, write_page, KVWithTs, RowDelta, StatCollector},
[INFO] [stdout]    |                       ^^^^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 17 |         Delta, MvccEntry, TxId,
[INFO] [stdout]    |                           ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `FrameReadGuard`, `MemPoolStatus`, `PageFrameKey`, `Page`, and `log_warn`
[INFO] [stdout]  --> src/mvcc_index/dual_heap_hash/chained_hash_table.rs:2:24
[INFO] [stdout]   |
[INFO] [stdout] 2 |     bp::{ContainerKey, FrameReadGuard, MemPool, MemPoolStatus, PageFrameKey},
[INFO] [stdout]   |                        ^^^^^^^^^^^^^^           ^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 3 |     log_warn,
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 9 |     page::{Page, PageId},
[INFO] [stdout]   |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `core::fmt`
[INFO] [stdout]   --> src/mvcc_index/dual_heap_hash/chained_hash_table.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use core::fmt;
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BTreeMap`, `HashMap`, `Mutex`, `fmt::format`, and `result`
[INFO] [stdout]   --> src/mvcc_index/dual_heap_hash/chained_hash_table.rs:14:44
[INFO] [stdout]    |
[INFO] [stdout] 14 |     collections::{hash_map::DefaultHasher, BTreeMap, HashMap},
[INFO] [stdout]    |                                            ^^^^^^^^  ^^^^^^^
[INFO] [stdout] 15 |     fmt::format,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 16 |     hash::{Hash, Hasher},
[INFO] [stdout] 17 |     result,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 20 |         Arc, Mutex,
[INFO] [stdout]    |              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TxInfo`
[INFO] [stdout]   --> src/mvcc_index/dual_heap_hash/chained_hash_table.rs:24:75
[INFO] [stdout]    |
[INFO] [stdout] 24 | use super::{chained_hash_bucket_second::DualChainBucket, Timestamp, TxId, TxInfo};
[INFO] [stdout]    |                                                                           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stdout]  --> src/mvcc_index/dual_heap_hash/mod.rs:5:13
[INFO] [stdout]   |
[INFO] [stdout] 5 | use serde::{Deserialize, Serialize};
[INFO] [stdout]   |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `core::fmt`
[INFO] [stdout]  --> src/mvcc_index/hash_common.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use core::fmt;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Hash`, `Hasher`, and `SipHasher`
[INFO] [stdout]  --> src/mvcc_index/hash_common.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 |     hash::{Hash, Hasher, SipHasher},
[INFO] [stdout]   |            ^^^^  ^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `log_warn`
[INFO] [stdout]   --> src/mvcc_index/hash_common.rs:15:16
[INFO] [stdout]    |
[INFO] [stdout] 15 |     log_debug, log_warn,
[INFO] [stdout]    |                ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `FrameReadGuard`, `MemPoolStatus`, `PageFrameKey`, `Page`, and `log_warn`
[INFO] [stdout]   --> src/mvcc_index/hash_heap/hash_heap_table.rs:2:24
[INFO] [stdout]    |
[INFO] [stdout]  2 |     bp::{ContainerKey, FrameReadGuard, MemPool, MemPoolStatus, PageFrameKey},
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^           ^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout]  3 |     log_warn,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 12 |     page::{Page, PageId},
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashSet`, `error::Error`, `fmt::Debug`, and `time::Duration`
[INFO] [stdout]   --> src/mvcc_index/hash_heap/hash_heap_table.rs:16:63
[INFO] [stdout]    |
[INFO] [stdout] 16 |     collections::{hash_map::DefaultHasher, BTreeMap, HashMap, HashSet},
[INFO] [stdout]    |                                                               ^^^^^^^
[INFO] [stdout] 17 |     error::Error,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 18 |     fmt::Debug,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     time::Duration,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `TxId` and `log_warn`
[INFO] [stdout]  --> src/mvcc_index/hash_join_page.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 |     log_warn,
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 4 |     mvcc_index::{hash_common::StatCollector, MvccEntry, TxId},
[INFO] [stdout]   |                                                         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `core::slice`
[INFO] [stdout]  --> src/mvcc_index/hash_join_page.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use core::slice;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AtomicPtr`, `Instant`, and `Ordering`
[INFO] [stdout]   --> src/mvcc_index/hash_join_page.rs:13:18
[INFO] [stdout]    |
[INFO] [stdout] 13 |         atomic::{AtomicPtr, AtomicU64, Ordering},
[INFO] [stdout]    |                  ^^^^^^^^^             ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 16 |     time::{self, Instant},
[INFO] [stdout]    |                  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `chrono::Duration`
[INFO] [stdout]    --> src/mvcc_index/hash_join_page.rs:208:5
[INFO] [stdout]     |
[INFO] [stdout] 208 | use chrono::Duration;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `KVWithTs`
[INFO] [stdout]    --> src/mvcc_index/hash_join_page.rs:489:19
[INFO] [stdout]     |
[INFO] [stdout] 489 |     hash_common::{KVWithTs, MvccEntryLoc, RowDelta},
[INFO] [stdout]     |                   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AtomicU64`, `self`, and `thread::current`
[INFO] [stdout]  --> src/mvcc_index/hash_join_heap_chain.rs:4:18
[INFO] [stdout]   |
[INFO] [stdout] 4 |         atomic::{self, AtomicU32, AtomicU64, Ordering},
[INFO] [stdout]   |                  ^^^^             ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 7 |     thread::current,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `PAGE_CNT` and `log_warn`
[INFO] [stdout]   --> src/mvcc_index/hash_join_heap_chain.rs:14:37
[INFO] [stdout]    |
[INFO] [stdout] 14 |     log_debug, log_info, log_trace, log_warn,
[INFO] [stdout]    |                                     ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 17 |         hash_join_page::{record::RecordRef, HashJoinPage, PAGE_CNT},
[INFO] [stdout]    |                                                           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/mvcc_index/rust_hash_map/rust_hash_map.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 |     sync::{Mutex, RwLock},
[INFO] [stdout]   |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `core::panic`
[INFO] [stdout]  --> src/mvcc_index/ts_partitioned/ts_partitioned_collection.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use core::panic;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Excluded`, `Unbounded`, and `time::Instant`
[INFO] [stdout]  --> src/mvcc_index/ts_partitioned/ts_partitioned_collection.rs:4:18
[INFO] [stdout]   |
[INFO] [stdout] 4 |     ops::Bound::{Excluded, Unbounded},
[INFO] [stdout]   |                  ^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 5 |     sync::Arc,
[INFO] [stdout] 6 |     time::Instant,
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `PageFrameKey`, `log_warn`, `page::Page`, and `write_page`
[INFO] [stdout]   --> src/mvcc_index/ts_partitioned/ts_partitioned_collection.rs:10:33
[INFO] [stdout]    |
[INFO] [stdout] 10 |     bp::{ContainerKey, MemPool, PageFrameKey},
[INFO] [stdout]    |                                 ^^^^^^^^^^^^
[INFO] [stdout] 11 |     log_warn,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 14 |             read_repair_btree, read_repair_vec, write_page, KVWithTs, MvccEntryLoc, RowDelta,
[INFO] [stdout]    |                                                 ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 21 |     page::Page,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `log_warn`
[INFO] [stdout]  --> src/mvcc_index/ts_partitioned/ts_partitioned_table.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 |     log_warn,
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `atomic::AtomicBool`
[INFO] [stdout]   --> src/mvcc_index/mod.rs:26:12
[INFO] [stdout]    |
[INFO] [stdout] 26 |     sync::{atomic::AtomicBool, Arc},
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `log_trace`
[INFO] [stdout]   --> src/tpcc/orderstatus_txn.rs:10:23
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::{log_info, log_trace, write_fields};
[INFO] [stdout]    |                       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `log_trace`
[INFO] [stdout]   --> src/tpcc/stocklevel_txn.rs:10:23
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::{log_info, log_trace, write_fields};
[INFO] [stdout]    |                       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::hash::DefaultHasher`
[INFO] [stdout]  --> src/tpcc/tx_utils.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::hash::DefaultHasher;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Hash`
[INFO] [stdout]  --> src/tpcc/tx_utils.rs:5:17
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::hash::{Hash, Hasher};
[INFO] [stdout]   |                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashSet`
[INFO] [stdout]  --> src/txn_storage/mvcc_hash_storage/mod.rs:3:28
[INFO] [stdout]   |
[INFO] [stdout] 3 |     collections::{HashMap, HashSet},
[INFO] [stdout]   |                            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ContainerId`, `DatabaseId`, and `dual_heap_hash::chained_hash_table::ChainedHashTable`
[INFO] [stdout]  --> src/txn_storage/mvcc_hash_storage/mod.rs:8:10
[INFO] [stdout]   |
[INFO] [stdout] 8 |     bp::{ContainerId, DatabaseId, MemPool},
[INFO] [stdout]   |          ^^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 9 |     mvcc_index::{dual_heap_hash::chained_hash_table::ChainedHashTable, MvccIndex, TxId, TxInfo},
[INFO] [stdout]   |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ContainerOptions`, `DBOptions`, `ScanOptions`, `TxnOptions`, `TxnStorageStatus`, and `TxnStorageTrait`
[INFO] [stdout]   --> src/txn_storage/mvcc_hash_storage/mod.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     ContainerOptions, DBOptions, ScanOptions, TxnOptions, TxnStorageStatus, TxnStorageTrait,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^  ^^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^  ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `log_info`
[INFO] [stdout]   --> src/file_manager.rs:14:17
[INFO] [stdout]    |
[INFO] [stdout] 14 |     use crate::{log_info, log_trace};
[INFO] [stdout]    |                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `MvccEntry`
[INFO] [stdout]  --> src/naive_hash_index/naive_hash_table/mod.rs:5:18
[INFO] [stdout]   |
[INFO] [stdout] 5 |     mvcc_index::{MvccEntry, TxId},
[INFO] [stdout]   |                  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AtomicU64`, `BTreeMap`, and `self`
[INFO] [stdout]  --> src/naive_hash_index/naive_hash_table/hash_join_chain.rs:2:19
[INFO] [stdout]   |
[INFO] [stdout] 2 |     collections::{BTreeMap, HashMap},
[INFO] [stdout]   |                   ^^^^^^^^
[INFO] [stdout] 3 |     sync::{
[INFO] [stdout] 4 |         atomic::{self, AtomicU32, AtomicU64, Ordering},
[INFO] [stdout]   |                  ^^^^             ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Record`, `fix_frame_id2`, `log_info`, `log_warn`, and `prelude::Timestamp`
[INFO] [stdout]   --> src/naive_hash_index/naive_hash_table/hash_join_chain.rs:13:16
[INFO] [stdout]    |
[INFO] [stdout] 13 |     log_debug, log_info, log_trace, log_warn,
[INFO] [stdout]    |                ^^^^^^^^             ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 16 |             fix_frame_id, fix_frame_id2, read_page, write_page, RowDelta, StatCollector,
[INFO] [stdout]    |                           ^^^^^^^^^^^^^
[INFO] [stdout] 17 |         },
[INFO] [stdout] 18 |         hash_join_page::record::{Record, RecordRef},
[INFO] [stdout]    |                                  ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 23 |     prelude::Timestamp,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `prelude::Timestamp`
[INFO] [stdout]  --> src/naive_hash_index/naive_hash_table/hash_join_page.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 8 |         prelude::Timestamp,
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `prelude::Timestamp`
[INFO] [stdout]    --> src/naive_hash_index/naive_hash_table/hash_join_page.rs:104:35
[INFO] [stdout]     |
[INFO] [stdout] 104 |     use crate::{mvcc_index::TxId, prelude::Timestamp};
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Record`
[INFO] [stdout]    --> src/naive_hash_index/naive_hash_table/hash_join_page.rs:218:34
[INFO] [stdout]     |
[INFO] [stdout] 218 |         hash_join_page::record::{Record, RecordRef},
[INFO] [stdout]     |                                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Delta`, `MvccEntry`, `Page`, `TxId`, `read_repair_btree`, and `read_repair_vec`
[INFO] [stdout]  --> src/naive_hash_index/naive_hash_table/hash_join_table.rs:4:23
[INFO] [stdout]   |
[INFO] [stdout] 4 |         hash_common::{read_repair_btree, read_repair_vec, StatCollector},
[INFO] [stdout]   |                       ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 5 |         hash_join_page::record::RecordRef,
[INFO] [stdout] 6 |         Delta, MvccEntry, MvccIndex, TxId,
[INFO] [stdout]   |         ^^^^^  ^^^^^^^^^             ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 9 |     page::{Page, PageId},
[INFO] [stdout]   |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AtomicBool`, `AtomicU64`, `BTreeMap`, `HashMap`, `HashSet`, and `Ordering`
[INFO] [stdout]   --> src/naive_hash_index/naive_hash_table/hash_join_table.rs:13:44
[INFO] [stdout]    |
[INFO] [stdout] 13 |     collections::{hash_map::DefaultHasher, BTreeMap, HashMap, HashSet},
[INFO] [stdout]    |                                            ^^^^^^^^  ^^^^^^^  ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 16 |         atomic::{AtomicBool, AtomicU32, AtomicU64, Ordering},
[INFO] [stdout]    |                  ^^^^^^^^^^             ^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated struct `std::hash::SipHasher`: use `std::hash::DefaultHasher` instead
[INFO] [stdout]  --> src/mvcc_index/hash_common.rs:4:26
[INFO] [stdout]   |
[INFO] [stdout] 4 |     hash::{Hash, Hasher, SipHasher},
[INFO] [stdout]   |                          ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]    --> src/access_method/chain/read_optimized_chain.rs:478:25
[INFO] [stdout]     |
[INFO] [stdout] 447 | /                         match upgraded_page.insert(key, value) {
[INFO] [stdout] 448 | |                             Ok(_) => {
[INFO] [stdout] 449 | |                                 return Ok(upgraded_page);
[INFO] [stdout] ...   |
[INFO] [stdout] 477 | |                         }
[INFO] [stdout]     | |_________________________- any code following this `match` expression is unreachable, as all arms diverge
[INFO] [stdout] 478 |                           return Ok(upgraded_page);
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SingleTsHashTable`
[INFO] [stdout]   --> src/naive_hash_index/naive_mvht.rs:15:61
[INFO] [stdout]    |
[INFO] [stdout] 15 |         naive_hash_table::{hash_join_table::NaiveHashTable, SingleTsHashTable},
[INFO] [stdout]    |                                                             ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SingleTsHashTable`
[INFO] [stdout]  --> src/naive_hash_index/naive_hash_table/hash_join_table.rs:8:74
[INFO] [stdout]   |
[INFO] [stdout] 8 |     naive_hash_index::naive_hash_table::{hash_join_chain::HeapHashChain, SingleTsHashTable},
[INFO] [stdout]   |                                                                          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `MvccIndex`
[INFO] [stdout]  --> src/naive_hash_index/naive_hash_table/hash_join_table.rs:6:27
[INFO] [stdout]   |
[INFO] [stdout] 6 |         Delta, MvccEntry, MvccIndex, TxId,
[INFO] [stdout]   |                           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `hash_join_page::HashJoinPage`
[INFO] [stdout]   --> src/mvcc_index/dual_heap_hash/chained_hash_bucket_second.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 16 |         hash_join_page::HashJoinPage,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `hash_join_page::HashJoinPage`
[INFO] [stdout]   --> src/mvcc_index/ts_partitioned/ts_partitioned_collection.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 18 |         hash_join_page::HashJoinPage,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Hasher`
[INFO] [stdout]  --> src/tpcc/tx_utils.rs:5:23
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::hash::{Hash, Hasher};
[INFO] [stdout]   |                       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `current_pos` is never read
[INFO] [stdout]    --> src/access_method/chain/short_key_mvcc_page.rs:196:13
[INFO] [stdout]     |
[INFO] [stdout] 196 |             current_pos += std::mem::size_of::<u64>();
[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: `key`
[INFO] [stdout]     --> src/access_method/chain/short_key_mvcc_page.rs:1155:34
[INFO] [stdout]      |
[INFO] [stdout] 1155 |     fn update_with_ts(&mut self, key: &[u8], val: &[u8], ts: u64) -> Result<(), AccessMethodError> {
[INFO] [stdout]      |                                  ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `val`
[INFO] [stdout]     --> src/access_method/chain/short_key_mvcc_page.rs:1155:46
[INFO] [stdout]      |
[INFO] [stdout] 1155 |     fn update_with_ts(&mut self, key: &[u8], val: &[u8], ts: u64) -> Result<(), AccessMethodError> {
[INFO] [stdout]      |                                              ^^^ help: if this is intentional, prefix it with an underscore: `_val`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ts`
[INFO] [stdout]     --> src/access_method/chain/short_key_mvcc_page.rs:1155:58
[INFO] [stdout]      |
[INFO] [stdout] 1155 |     fn update_with_ts(&mut self, key: &[u8], val: &[u8], ts: u64) -> Result<(), AccessMethodError> {
[INFO] [stdout]      |                                                          ^^ help: if this is intentional, prefix it with an underscore: `_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]     --> src/access_method/chain/short_key_mvcc_page.rs:1161:9
[INFO] [stdout]      |
[INFO] [stdout] 1161 |         key: &[u8],
[INFO] [stdout]      |         ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `val`
[INFO] [stdout]     --> src/access_method/chain/short_key_mvcc_page.rs:1162:9
[INFO] [stdout]      |
[INFO] [stdout] 1162 |         val: &[u8],
[INFO] [stdout]      |         ^^^ help: if this is intentional, prefix it with an underscore: `_val`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ts`
[INFO] [stdout]     --> src/access_method/chain/short_key_mvcc_page.rs:1163:9
[INFO] [stdout]      |
[INFO] [stdout] 1163 |         ts: u64,
[INFO] [stdout]      |         ^^ help: if this is intentional, prefix it with an underscore: `_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `slot_id`
[INFO] [stdout]     --> src/access_method/chain/short_key_mvcc_page.rs:1164:9
[INFO] [stdout]      |
[INFO] [stdout] 1164 |         slot_id: u32,
[INFO] [stdout]      |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_slot_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/access_method/chain/mod.rs:159:9
[INFO] [stdout]     |
[INFO] [stdout] 159 |         key: &[u8],
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/access_method/chain/mod.rs:160:9
[INFO] [stdout]     |
[INFO] [stdout] 160 |         value: &[u8],
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `merge_fn`
[INFO] [stdout]    --> src/access_method/chain/mod.rs:161:9
[INFO] [stdout]     |
[INFO] [stdout] 161 |         merge_fn: impl Fn(&[u8], &[u8]) -> Vec<u8>,
[INFO] [stdout]     |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_merge_fn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/access_method/chain/mod.rs:167:22
[INFO] [stdout]     |
[INFO] [stdout] 167 |     fn delete(&self, key: &[u8]) -> Result<(), AccessMethodError> {
[INFO] [stdout]     |                      ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `filter`
[INFO] [stdout]    --> src/access_method/chain/mod.rs:183:9
[INFO] [stdout]     |
[INFO] [stdout] 183 |         filter: Arc<dyn Fn(&[u8], &[u8]) -> bool + Send + Sync>,
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_filter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/bp/buffer_pool.rs:852:29
[INFO] [stdout]     |
[INFO] [stdout] 852 |     fn prefetch_page(&self, key: PageFrameKey) -> Result<(), MemPoolStatus> {
[INFO] [stdout]     |                             ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/mvcc_index/dual_heap_hash/chained_hash_table.rs:64:13
[INFO] [stdout]    |
[INFO] [stdout] 64 |         for i in 0..num_buckets {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/mvcc_index/dual_heap_hash/chained_hash_table.rs:382:9
[INFO] [stdout]     |
[INFO] [stdout] 382 |         key: &[u8],
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ts`
[INFO] [stdout]    --> src/mvcc_index/dual_heap_hash/chained_hash_table.rs:383:9
[INFO] [stdout]     |
[INFO] [stdout] 383 |         ts: Timestamp,
[INFO] [stdout]     |         ^^ help: if this is intentional, prefix it with an underscore: `_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/mvcc_index/hash_heap/hash_heap_table.rs:59:13
[INFO] [stdout]    |
[INFO] [stdout] 59 |         let mut meta_page = mem_pool.create_new_page_for_write(c_key).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: `i`
[INFO] [stdout]   --> src/mvcc_index/hash_heap/hash_heap_table.rs:64:13
[INFO] [stdout]    |
[INFO] [stdout] 64 |         for i in 0..num_buckets {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pkey`
[INFO] [stdout]    --> src/mvcc_index/hash_heap/hash_heap_table.rs:170:9
[INFO] [stdout]     |
[INFO] [stdout] 170 |         pkey: &[u8],
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_pkey`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ts`
[INFO] [stdout]    --> src/mvcc_index/hash_heap/hash_heap_table.rs:529:27
[INFO] [stdout]     |
[INFO] [stdout] 529 |     fn split_at_ts(&self, ts: Timestamp) -> Result<(), Self::Error> {
[INFO] [stdout]     |                           ^^ help: if this is intentional, prefix it with an underscore: `_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `str`
[INFO] [stdout]   --> src/mvcc_index/hash_join_page.rs:39:25
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub fn print_statistics(str: impl AsRef<str>) {
[INFO] [stdout]    |                         ^^^ help: if this is intentional, prefix it with an underscore: `_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `slot_prefix`
[INFO] [stdout]     --> src/mvcc_index/hash_join_page.rs:1554:13
[INFO] [stdout]      |
[INFO] [stdout] 1554 |         let slot_prefix = &slot.pkey_prefix()[..prefix_len];
[INFO] [stdout]      |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_slot_prefix`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pkey`
[INFO] [stdout]    --> src/mvcc_index/hash_join_heap_chain.rs:392:9
[INFO] [stdout]     |
[INFO] [stdout] 392 |         pkey: &[u8],
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_pkey`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pkey`
[INFO] [stdout]    --> src/mvcc_index/hash_join_heap_chain.rs:568:9
[INFO] [stdout]     |
[INFO] [stdout] 568 |         pkey: &[u8],
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_pkey`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c_key`
[INFO] [stdout]   --> src/mvcc_index/rust_hash_map/rust_hash_map.rs:27:9
[INFO] [stdout]    |
[INFO] [stdout] 27 |         c_key: crate::prelude::ContainerKey,
[INFO] [stdout]    |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_c_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mem_pool`
[INFO] [stdout]   --> src/mvcc_index/rust_hash_map/rust_hash_map.rs:28:9
[INFO] [stdout]    |
[INFO] [stdout] 28 |         mem_pool: std::sync::Arc<T>,
[INFO] [stdout]    |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_mem_pool`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c_key`
[INFO] [stdout]   --> src/mvcc_index/rust_hash_map/rust_hash_map.rs:39:9
[INFO] [stdout]    |
[INFO] [stdout] 39 |         c_key: crate::prelude::ContainerKey,
[INFO] [stdout]    |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_c_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mem_pool`
[INFO] [stdout]   --> src/mvcc_index/rust_hash_map/rust_hash_map.rs:40:9
[INFO] [stdout]    |
[INFO] [stdout] 40 |         mem_pool: std::sync::Arc<T>,
[INFO] [stdout]    |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_mem_pool`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bucket_num`
[INFO] [stdout]   --> src/mvcc_index/rust_hash_map/rust_hash_map.rs:41:9
[INFO] [stdout]    |
[INFO] [stdout] 41 |         bucket_num: usize,
[INFO] [stdout]    |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bucket_num`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tx_id`
[INFO] [stdout]   --> src/mvcc_index/rust_hash_map/rust_hash_map.rs:56:9
[INFO] [stdout]    |
[INFO] [stdout] 56 |         tx_id: crate::mvcc_index::TxId,
[INFO] [stdout]    |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_tx_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tx_id`
[INFO] [stdout]    --> src/mvcc_index/rust_hash_map/rust_hash_map.rs:115:9
[INFO] [stdout]     |
[INFO] [stdout] 115 |         tx_id: crate::mvcc_index::TxId,
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_tx_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tx_id`
[INFO] [stdout]    --> src/mvcc_index/rust_hash_map/rust_hash_map.rs:138:9
[INFO] [stdout]     |
[INFO] [stdout] 138 |         tx_id: crate::mvcc_index::TxId,
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_tx_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tx_id`
[INFO] [stdout]    --> src/mvcc_index/rust_hash_map/rust_hash_map.rs:161:9
[INFO] [stdout]     |
[INFO] [stdout] 161 |         tx_id: crate::mvcc_index::TxId,
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_tx_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `from_ts`
[INFO] [stdout]    --> src/mvcc_index/rust_hash_map/rust_hash_map.rs:217:9
[INFO] [stdout]     |
[INFO] [stdout] 217 |         from_ts: crate::prelude::Timestamp,
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_from_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `to_ts`
[INFO] [stdout]    --> src/mvcc_index/rust_hash_map/rust_hash_map.rs:218:9
[INFO] [stdout]     |
[INFO] [stdout] 218 |         to_ts: crate::prelude::Timestamp,
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_to_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `safe_ts`
[INFO] [stdout]    --> src/mvcc_index/rust_hash_map/rust_hash_map.rs:242:31
[INFO] [stdout]     |
[INFO] [stdout] 242 |     fn garbage_collect(&self, safe_ts: crate::prelude::Timestamp) -> Result<(), Self::Error> {
[INFO] [stdout]     |                               ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_safe_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ts`
[INFO] [stdout]    --> src/mvcc_index/rust_hash_map/rust_hash_map.rs:291:27
[INFO] [stdout]     |
[INFO] [stdout] 291 |     fn split_at_ts(&self, ts: crate::prelude::Timestamp) -> Result<(), Self::Error> {
[INFO] [stdout]     |                           ^^ help: if this is intentional, prefix it with an underscore: `_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ts`
[INFO] [stdout]   --> src/mvcc_index/ts_partitioned/ts_partitioned_collection.rs:96:26
[INFO] [stdout]    |
[INFO] [stdout] 96 |     pub fn insert(&self, ts: Timestamp, entry: &MvccEntry) -> Result<(), AccessMethodError> {
[INFO] [stdout]    |                          ^^ help: if this is intentional, prefix it with an underscore: `_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ts`
[INFO] [stdout]    --> src/mvcc_index/ts_partitioned/ts_partitioned_collection.rs:148:26
[INFO] [stdout]     |
[INFO] [stdout] 148 |     pub fn update(&self, ts: Timestamp, entry: &MvccEntry) -> Result<(), AccessMethodError> {
[INFO] [stdout]     |                          ^^ help: if this is intentional, prefix it with an underscore: `_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ts`
[INFO] [stdout]    --> src/mvcc_index/ts_partitioned/ts_partitioned_collection.rs:156:9
[INFO] [stdout]     |
[INFO] [stdout] 156 |         ts: Timestamp,
[INFO] [stdout]     |         ^^ help: if this is intentional, prefix it with an underscore: `_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/mvcc_index/ts_partitioned/ts_partitioned_table.rs:53:13
[INFO] [stdout]    |
[INFO] [stdout] 53 |         for i in 0..num_buckets {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pkey`
[INFO] [stdout]    --> src/mvcc_index/ts_partitioned/ts_partitioned_table.rs:107:35
[INFO] [stdout]     |
[INFO] [stdout] 107 |     fn _update(&self, key: &[u8], pkey: &[u8], entry: &MvccEntry) -> Result<(), AccessMethodError> {
[INFO] [stdout]     |                                   ^^^^ help: if this is intentional, prefix it with an underscore: `_pkey`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pkey`
[INFO] [stdout]    --> src/mvcc_index/ts_partitioned/ts_partitioned_table.rs:122:9
[INFO] [stdout]     |
[INFO] [stdout] 122 |         pkey: &[u8],
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_pkey`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/mvcc_index/ts_partitioned/ts_partitioned_table.rs:266:9
[INFO] [stdout]     |
[INFO] [stdout] 266 |         key: &[u8],
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pkey`
[INFO] [stdout]    --> src/mvcc_index/ts_partitioned/ts_partitioned_table.rs:267:9
[INFO] [stdout]     |
[INFO] [stdout] 267 |         pkey: &[u8],
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_pkey`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ts`
[INFO] [stdout]    --> src/mvcc_index/ts_partitioned/ts_partitioned_table.rs:268:9
[INFO] [stdout]     |
[INFO] [stdout] 268 |         ts: Timestamp,
[INFO] [stdout]     |         ^^ help: if this is intentional, prefix it with an underscore: `_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tx_id`
[INFO] [stdout]    --> src/mvcc_index/ts_partitioned/ts_partitioned_table.rs:269:9
[INFO] [stdout]     |
[INFO] [stdout] 269 |         tx_id: TxId,
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_tx_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `config`
[INFO] [stdout]    --> src/tpcc/delivery_txn.rs:213:16
[INFO] [stdout]     |
[INFO] [stdout] 213 |     pub fn new(config: &TPCCConfig, w_id: u16) -> Self {
[INFO] [stdout]     |                ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `txn_storage`
[INFO] [stdout]    --> src/tpcc/loader.rs:166:5
[INFO] [stdout]     |
[INFO] [stdout] 166 |     txn_storage: &impl TxnStorageTrait,
[INFO] [stdout]     |     ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_txn_storage`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `table_info`
[INFO] [stdout]    --> src/tpcc/loader.rs:167:5
[INFO] [stdout]     |
[INFO] [stdout] 167 |     table_info: &TableInfo,
[INFO] [stdout]     |     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_table_info`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `h_c_w_id`
[INFO] [stdout]    --> src/tpcc/loader.rs:168:5
[INFO] [stdout]     |
[INFO] [stdout] 168 |     h_c_w_id: u16,
[INFO] [stdout]     |     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_h_c_w_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `h_c_d_id`
[INFO] [stdout]    --> src/tpcc/loader.rs:169:5
[INFO] [stdout]     |
[INFO] [stdout] 169 |     h_c_d_id: u8,
[INFO] [stdout]     |     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_h_c_d_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `h_c_id`
[INFO] [stdout]    --> src/tpcc/loader.rs:170:5
[INFO] [stdout]     |
[INFO] [stdout] 170 |     h_c_id: u32,
[INFO] [stdout]     |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_h_c_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `h_w_id`
[INFO] [stdout]    --> src/tpcc/loader.rs:171:5
[INFO] [stdout]     |
[INFO] [stdout] 171 |     h_w_id: u16,
[INFO] [stdout]     |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_h_w_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `h_d_id`
[INFO] [stdout]    --> src/tpcc/loader.rs:172:5
[INFO] [stdout]     |
[INFO] [stdout] 172 |     h_d_id: u8,
[INFO] [stdout]     |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_h_d_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/tpcc/neworder_txn.rs:372:14
[INFO] [stdout]     |
[INFO] [stdout] 372 |         for (i, item) in self.items.iter().enumerate() {
[INFO] [stdout]     |              ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `item`
[INFO] [stdout]    --> src/tpcc/neworder_txn.rs:372:17
[INFO] [stdout]     |
[INFO] [stdout] 372 |         for (i, item) in self.items.iter().enumerate() {
[INFO] [stdout]     |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_item`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `config`
[INFO] [stdout]    --> src/tpcc/orderstatus_txn.rs:229:16
[INFO] [stdout]     |
[INFO] [stdout] 229 |     pub fn new(config: &TPCCConfig, w_id: u16) -> Self {
[INFO] [stdout]     |                ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `h_date`
[INFO] [stdout]   --> src/tpcc/payment_txn.rs:51:13
[INFO] [stdout]    |
[INFO] [stdout] 51 |         let h_date = self.input.h_date;
[INFO] [stdout]    |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_h_date`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/tpcc/tx_utils.rs:412:13
[INFO] [stdout]     |
[INFO] [stdout] 412 |         Err(e) => {
[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/tpcc/tx_utils.rs:454:17
[INFO] [stdout]     |
[INFO] [stdout] 454 |             Err(e) => {
[INFO] [stdout]     |                 ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `reason`
[INFO] [stdout]    --> src/tpcc/tx_utils.rs:553:29
[INFO] [stdout]     |
[INFO] [stdout] 553 |             TPCCStatus::Bug(reason) => {
[INFO] [stdout]     |                             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_reason`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `db_id`
[INFO] [stdout]    --> src/txn_storage/inmem/mod.rs:446:9
[INFO] [stdout]     |
[INFO] [stdout] 446 |         db_id: DatabaseId,
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_db_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c_id`
[INFO] [stdout]    --> src/txn_storage/inmem/mod.rs:447:9
[INFO] [stdout]     |
[INFO] [stdout] 447 |         c_id: ContainerId,
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_c_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/txn_storage/inmem/mod.rs:448:9
[INFO] [stdout]     |
[INFO] [stdout] 448 |         key: Vec<u8>,
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/txn_storage/inmem/mod.rs:449:9
[INFO] [stdout]     |
[INFO] [stdout] 449 |         value: Vec<u8>,
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `txn`
[INFO] [stdout]    --> src/txn_storage/inmem/mod.rs:587:9
[INFO] [stdout]     |
[INFO] [stdout] 587 |         txn: &Self::TxnHandle,
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_txn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c_id`
[INFO] [stdout]    --> src/txn_storage/inmem/mod.rs:588:9
[INFO] [stdout]     |
[INFO] [stdout] 588 |         c_id: ContainerId,
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_c_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/txn_storage/inmem/mod.rs:589:9
[INFO] [stdout]     |
[INFO] [stdout] 589 |         key: K,
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `func`
[INFO] [stdout]    --> src/txn_storage/inmem/mod.rs:590:9
[INFO] [stdout]     |
[INFO] [stdout] 590 |         func: F,
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_func`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/txn_storage/ondisk/mod.rs:86:33
[INFO] [stdout]    |
[INFO] [stdout] 86 |             Storage::AppendOnly(v) => {
[INFO] [stdout]    |                                 ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/txn_storage/ondisk/mod.rs:99:33
[INFO] [stdout]    |
[INFO] [stdout] 99 |             Storage::AppendOnly(v) => {
[INFO] [stdout]    |                                 ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]    --> src/txn_storage/ondisk/mod.rs:112:33
[INFO] [stdout]     |
[INFO] [stdout] 112 |             Storage::AppendOnly(v) => {
[INFO] [stdout]     |                                 ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `db_id`
[INFO] [stdout]    --> src/txn_storage/ondisk/mod.rs:334:9
[INFO] [stdout]     |
[INFO] [stdout] 334 |         db_id: DatabaseId,
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_db_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c_id`
[INFO] [stdout]    --> src/txn_storage/ondisk/mod.rs:335:9
[INFO] [stdout]     |
[INFO] [stdout] 335 |         c_id: ContainerId,
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_c_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/txn_storage/ondisk/mod.rs:336:9
[INFO] [stdout]     |
[INFO] [stdout] 336 |         key: Vec<u8>,
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/txn_storage/ondisk/mod.rs:337:9
[INFO] [stdout]     |
[INFO] [stdout] 337 |         value: Vec<u8>,
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `txn`
[INFO] [stdout]    --> src/txn_storage/ondisk/mod.rs:473:9
[INFO] [stdout]     |
[INFO] [stdout] 473 |         txn: &Self::TxnHandle,
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_txn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c_id`
[INFO] [stdout]    --> src/txn_storage/ondisk/mod.rs:474:9
[INFO] [stdout]     |
[INFO] [stdout] 474 |         c_id: ContainerId,
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_c_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/txn_storage/ondisk/mod.rs:475:9
[INFO] [stdout]     |
[INFO] [stdout] 475 |         key: K,
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `func`
[INFO] [stdout]    --> src/txn_storage/ondisk/mod.rs:476:9
[INFO] [stdout]     |
[INFO] [stdout] 476 |         func: F,
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_func`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `txn`
[INFO] [stdout]    --> src/txn_storage/ondisk/mod.rs:513:9
[INFO] [stdout]     |
[INFO] [stdout] 513 |         txn: &Self::TxnHandle,
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_txn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sss`
[INFO] [stdout]    --> src/txn_storage/ondisk_2pl/mod.rs:734:9
[INFO] [stdout]     |
[INFO] [stdout] 734 |         sss: &SecondaryStorages<M>,
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_sss`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `db_id`
[INFO] [stdout]    --> src/txn_storage/ondisk_2pl/mod.rs:932:9
[INFO] [stdout]     |
[INFO] [stdout] 932 |         db_id: DatabaseId,
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_db_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c_id`
[INFO] [stdout]    --> src/txn_storage/ondisk_2pl/mod.rs:933:9
[INFO] [stdout]     |
[INFO] [stdout] 933 |         c_id: ContainerId,
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_c_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `db_id`
[INFO] [stdout]    --> src/txn_storage/ondisk_2pl/mod.rs:953:31
[INFO] [stdout]     |
[INFO] [stdout] 953 |     fn list_containers(&self, db_id: DatabaseId) -> Result<HashSet<ContainerId>, TxnStorageStatus> {
[INFO] [stdout]     |                               ^^^^^ help: if this is intentional, prefix it with an underscore: `_db_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `db_id`
[INFO] [stdout]    --> src/txn_storage/ondisk_2pl/mod.rs:959:9
[INFO] [stdout]     |
[INFO] [stdout] 959 |         db_id: DatabaseId,
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_db_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `options`
[INFO] [stdout]    --> src/txn_storage/ondisk_2pl/mod.rs:983:9
[INFO] [stdout]     |
[INFO] [stdout] 983 |         options: TxnOptions,
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_options`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `txn`
[INFO] [stdout]     --> src/txn_storage/ondisk_2pl/mod.rs:1015:28
[INFO] [stdout]      |
[INFO] [stdout] 1015 |     fn wait_for_txn(&self, txn: &Self::TxnHandle) -> Result<(), TxnStorageStatus> {
[INFO] [stdout]      |                            ^^^ help: if this is intentional, prefix it with an underscore: `_txn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `txn`
[INFO] [stdout]     --> src/txn_storage/ondisk_2pl/mod.rs:1019:24
[INFO] [stdout]      |
[INFO] [stdout] 1019 |     fn drop_txn(&self, txn: Self::TxnHandle) -> Result<(), TxnStorageStatus> {
[INFO] [stdout]      |                        ^^^ help: if this is intentional, prefix it with an underscore: `_txn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `txn`
[INFO] [stdout]     --> src/txn_storage/ondisk_2pl/mod.rs:1025:9
[INFO] [stdout]      |
[INFO] [stdout] 1025 |         txn: &Self::TxnHandle,
[INFO] [stdout]      |         ^^^ help: if this is intentional, prefix it with an underscore: `_txn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c_id`
[INFO] [stdout]     --> src/txn_storage/ondisk_2pl/mod.rs:1026:9
[INFO] [stdout]      |
[INFO] [stdout] 1026 |         c_id: ContainerId,
[INFO] [stdout]      |         ^^^^ help: if this is intentional, prefix it with an underscore: `_c_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `txn`
[INFO] [stdout]     --> src/txn_storage/ondisk_2pl/mod.rs:1033:9
[INFO] [stdout]      |
[INFO] [stdout] 1033 |         txn: &Self::TxnHandle,
[INFO] [stdout]      |         ^^^ help: if this is intentional, prefix it with an underscore: `_txn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c_id`
[INFO] [stdout]     --> src/txn_storage/ondisk_2pl/mod.rs:1034:9
[INFO] [stdout]      |
[INFO] [stdout] 1034 |         c_id: ContainerId,
[INFO] [stdout]      |         ^^^^ help: if this is intentional, prefix it with an underscore: `_c_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]     --> src/txn_storage/ondisk_2pl/mod.rs:1035:9
[INFO] [stdout]      |
[INFO] [stdout] 1035 |         key: K,
[INFO] [stdout]      |         ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ss`
[INFO] [stdout]     --> src/txn_storage/ondisk_2pl/mod.rs:1049:22
[INFO] [stdout]      |
[INFO] [stdout] 1049 |                 Some(ss) => {
[INFO] [stdout]      |                      ^^ help: if this is intentional, prefix it with an underscore: `_ss`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ss`
[INFO] [stdout]     --> src/txn_storage/ondisk_2pl/mod.rs:1067:22
[INFO] [stdout]      |
[INFO] [stdout] 1067 |                 Some(ss) => {
[INFO] [stdout]      |                      ^^ help: if this is intentional, prefix it with an underscore: `_ss`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ss`
[INFO] [stdout]     --> src/txn_storage/ondisk_2pl/mod.rs:1088:22
[INFO] [stdout]      |
[INFO] [stdout] 1088 |                 Some(ss) => {
[INFO] [stdout]      |                      ^^ help: if this is intentional, prefix it with an underscore: `_ss`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ss`
[INFO] [stdout]     --> src/txn_storage/ondisk_2pl/mod.rs:1107:22
[INFO] [stdout]      |
[INFO] [stdout] 1107 |                 Some(ss) => {
[INFO] [stdout]      |                      ^^ help: if this is intentional, prefix it with an underscore: `_ss`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ss`
[INFO] [stdout]     --> src/txn_storage/ondisk_2pl/mod.rs:1129:22
[INFO] [stdout]      |
[INFO] [stdout] 1129 |                 Some(ss) => {
[INFO] [stdout]      |                      ^^ help: if this is intentional, prefix it with an underscore: `_ss`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ss`
[INFO] [stdout]     --> src/txn_storage/ondisk_2pl/mod.rs:1146:22
[INFO] [stdout]      |
[INFO] [stdout] 1146 |                 Some(ss) => {
[INFO] [stdout]      |                      ^^ help: if this is intentional, prefix it with an underscore: `_ss`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `txn`
[INFO] [stdout]     --> src/txn_storage/ondisk_2pl/mod.rs:1156:9
[INFO] [stdout]      |
[INFO] [stdout] 1156 |         txn: &Self::TxnHandle,
[INFO] [stdout]      |         ^^^ help: if this is intentional, prefix it with an underscore: `_txn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `iter`
[INFO] [stdout]     --> src/txn_storage/ondisk_2pl/mod.rs:1195:36
[INFO] [stdout]      |
[INFO] [stdout] 1195 |     fn drop_iterator_handle(&self, iter: Self::IteratorHandle) -> Result<(), TxnStorageStatus> {
[INFO] [stdout]      |                                    ^^^^ help: if this is intentional, prefix it with an underscore: `_iter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/txn_storage/ondisk_silo/mod.rs:74:33
[INFO] [stdout]    |
[INFO] [stdout] 74 |             Storage::AppendOnly(v) => {
[INFO] [stdout]    |                                 ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/txn_storage/ondisk_silo/mod.rs:87:33
[INFO] [stdout]    |
[INFO] [stdout] 87 |             Storage::AppendOnly(v) => {
[INFO] [stdout]    |                                 ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]    --> src/txn_storage/ondisk_silo/mod.rs:100:33
[INFO] [stdout]     |
[INFO] [stdout] 100 |             Storage::AppendOnly(v) => {
[INFO] [stdout]     |                                 ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `db_id`
[INFO] [stdout]    --> src/txn_storage/txn_storage_trait.rs:189:9
[INFO] [stdout]     |
[INFO] [stdout] 189 |         db_id: DatabaseId,
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_db_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c_id`
[INFO] [stdout]    --> src/txn_storage/txn_storage_trait.rs:190:9
[INFO] [stdout]     |
[INFO] [stdout] 190 |         c_id: ContainerId,
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_c_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `start_ts`
[INFO] [stdout]    --> src/naive_hash_index/naive_hash_table/hash_join_page.rs:424:9
[INFO] [stdout]     |
[INFO] [stdout] 424 |         start_ts: Timestamp,
[INFO] [stdout]     |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_start_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `end_ts`
[INFO] [stdout]    --> src/naive_hash_index/naive_hash_table/hash_join_page.rs:425:9
[INFO] [stdout]     |
[INFO] [stdout] 425 |         end_ts: Timestamp,
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_end_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `slot_prefix`
[INFO] [stdout]    --> src/naive_hash_index/naive_hash_table/hash_join_page.rs:609:13
[INFO] [stdout]     |
[INFO] [stdout] 609 |         let slot_prefix = &slot.pkey_prefix()[..prefix_len];
[INFO] [stdout]     |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_slot_prefix`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/naive_hash_index/naive_hash_table/hash_join_table.rs:61:13
[INFO] [stdout]    |
[INFO] [stdout] 61 |         let mut meta_page = mem_pool.create_new_page_for_write(c_key).unwrap();
[INFO] [stdout]    |             ----^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/naive_hash_index/naive_hash_table/hash_join_table.rs:66:13
[INFO] [stdout]    |
[INFO] [stdout] 66 |         for i in 0..num_buckets {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ts`
[INFO] [stdout]    --> src/naive_hash_index/naive_hash_table/hash_join_table.rs:138:27
[INFO] [stdout]     |
[INFO] [stdout] 138 |     fn split_at_ts(&self, ts: Timestamp) -> Result<(), AccessMethodError> {
[INFO] [stdout]     |                           ^^ help: if this is intentional, prefix it with an underscore: `_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/naive_hash_index/naive_mvht.rs:48:13
[INFO] [stdout]    |
[INFO] [stdout] 48 |         let mut vec_updates = Vec::<Record>::new();
[INFO] [stdout]    |             ----^^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `set_offset`, `set_key_size`, and `set_val_size` are never used
[INFO] [stdout]   --> src/access_method/append_only_store/append_only_page.rs:76:16
[INFO] [stdout]    |
[INFO] [stdout] 22 |     impl Slot {
[INFO] [stdout]    |     --------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 76 |         pub fn set_offset(&mut self, offset: u32) {
[INFO] [stdout]    |                ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 84 |         pub fn set_key_size(&mut self, key_size: u32) {
[INFO] [stdout]    |                ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 92 |         pub fn set_val_size(&mut self, val_size: u32) {
[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 `c_key` and `meta_page_id` are never read
[INFO] [stdout]   --> src/access_method/chain/mod.rs:29:5
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub struct HashReadOptimize<T: MemPool> {
[INFO] [stdout]    |            ---------------- fields in this struct
[INFO] [stdout] 28 |     pub mem_pool: Arc<T>,
[INFO] [stdout] 29 |     c_key: ContainerKey,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 30 |     num_buckets: usize,
[INFO] [stdout] 31 |     meta_page_id: PageId, // Stores the number of buckets and all the page ids of the first of the chain
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `ReadOptimizedPage` is never used
[INFO] [stdout]    --> src/access_method/chain/short_key_mvcc_page.rs:372:11
[INFO] [stdout]     |
[INFO] [stdout] 372 | pub trait ReadOptimizedPage {
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PAGE_HEADER_SIZE` is never used
[INFO] [stdout]  --> src/access_method/chain/short_key_mvcc_page.rs:8:15
[INFO] [stdout]   |
[INFO] [stdout] 8 |     pub const PAGE_HEADER_SIZE: usize = std::mem::size_of::<Header>();
[INFO] [stdout]   |               ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Header` is never constructed
[INFO] [stdout]   --> src/access_method/chain/short_key_mvcc_page.rs:10:16
[INFO] [stdout]    |
[INFO] [stdout] 10 |     pub struct Header {
[INFO] [stdout]    |                ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/access_method/chain/short_key_mvcc_page.rs:19:16
[INFO] [stdout]     |
[INFO] [stdout]  18 |     impl Header {
[INFO] [stdout]     |     ----------- associated items in this implementation
[INFO] [stdout]  19 |         pub fn from_bytes(bytes: &[u8; PAGE_HEADER_SIZE]) -> Self {
[INFO] [stdout]     |                ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  60 |         pub fn to_bytes(&self) -> [u8; PAGE_HEADER_SIZE] {
[INFO] [stdout]     |                ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  80 |         pub fn new() -> Self {
[INFO] [stdout]     |                ^^^
[INFO] [stdout] ...
[INFO] [stdout]  90 |         pub fn next_page(&self) -> Option<(PageId, u32)> {
[INFO] [stdout]     |                ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  98 |         pub fn set_next_page(&mut self, next_page_id: PageId, frame_id: u32) {
[INFO] [stdout]     |                ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 103 |         pub fn next_page_id(&self) -> PageId {
[INFO] [stdout]     |                ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 107 |         pub fn set_next_page_id(&mut self, next_page_id: PageId) {
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 111 |         pub fn next_frame_id(&self) -> u32 {
[INFO] [stdout]     |                ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 115 |         pub fn set_next_frame_id(&mut self, next_frame_id: u32) {
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |         pub fn total_bytes_used(&self) -> u32 {
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 123 |         pub fn set_total_bytes_used(&mut self, total_bytes_used: u32) {
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 127 |         pub fn slot_count(&self) -> u32 {
[INFO] [stdout]     |                ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 131 |         pub fn set_slot_count(&mut self, slot_count: u32) {
[INFO] [stdout]     |                ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 135 |         pub fn increment_slot_count(&mut self) {
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 139 |         pub fn decrement_slot_count(&mut self) {
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 143 |         pub fn rec_start_offset(&self) -> u32 {
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 147 |         pub fn set_rec_start_offset(&mut self, rec_start_offset: u32) {
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SLOT_SIZE` is never used
[INFO] [stdout]    --> src/access_method/chain/short_key_mvcc_page.rs:155:15
[INFO] [stdout]     |
[INFO] [stdout] 155 |     pub const SLOT_SIZE: usize = std::mem::size_of::<Slot>();
[INFO] [stdout]     |               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SLOT_KEY_PREFIX_SIZE` is never used
[INFO] [stdout]    --> src/access_method/chain/short_key_mvcc_page.rs:156:15
[INFO] [stdout]     |
[INFO] [stdout] 156 |     pub const SLOT_KEY_PREFIX_SIZE: usize = std::mem::size_of::<[u8; 8]>();
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Slot` is never constructed
[INFO] [stdout]    --> src/access_method/chain/short_key_mvcc_page.rs:159:16
[INFO] [stdout]     |
[INFO] [stdout] 159 |     pub struct Slot {
[INFO] [stdout]     |                ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/access_method/chain/short_key_mvcc_page.rs:169:16
[INFO] [stdout]     |
[INFO] [stdout] 168 |     impl Slot {
[INFO] [stdout]     |     --------- associated items in this implementation
[INFO] [stdout] 169 |         pub fn to_bytes(&self) -> [u8; SLOT_SIZE] {
[INFO] [stdout]     |                ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 201 |         pub fn from_bytes(bytes: &[u8; SLOT_SIZE]) -> Self {
[INFO] [stdout]     |                ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 243 |         pub fn new(key: &[u8], val: &[u8], offset: usize) -> Self {
[INFO] [stdout]     |                ^^^
[INFO] [stdout] ...
[INFO] [stdout] 260 |         pub fn new_with_start_ts(key: &[u8], val: &[u8], start_ts: u64, offset: usize) -> Self {
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 277 |         pub fn key_size(&self) -> u32 {
[INFO] [stdout]     |                ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 281 |         pub fn key_prefix(&self) -> &[u8] {
[INFO] [stdout]     |                ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 285 |         pub fn val_size(&self) -> u32 {
[INFO] [stdout]     |                ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 289 |         pub fn set_val_size(&mut self, val_size: usize) {
[INFO] [stdout]     |                ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 293 |         pub fn offset(&self) -> u32 {
[INFO] [stdout]     |                ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 297 |         pub fn set_offset(&mut self, offset: u32) {
[INFO] [stdout]     |                ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 301 |         pub fn start_ts(&self) -> u64 {
[INFO] [stdout]     |                ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 305 |         pub fn set_start_ts(&mut self, start_ts: u64) {
[INFO] [stdout]     |                ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Record` is never constructed
[INFO] [stdout]    --> src/access_method/chain/short_key_mvcc_page.rs:314:16
[INFO] [stdout]     |
[INFO] [stdout] 314 |     pub struct Record {
[INFO] [stdout]     |                ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/access_method/chain/short_key_mvcc_page.rs:320:16
[INFO] [stdout]     |
[INFO] [stdout] 319 |     impl Record {
[INFO] [stdout]     |     ----------- associated items in this implementation
[INFO] [stdout] 320 |         pub fn from_bytes(bytes: &[u8], key_size: u32, val_size: u32) -> Self {
[INFO] [stdout]     |                ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 331 |         pub fn to_bytes(&self) -> Vec<u8> {
[INFO] [stdout]     |                ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 340 |         pub fn new(key: &[u8], val: &[u8]) -> Self {
[INFO] [stdout]     |                ^^^
[INFO] [stdout] ...
[INFO] [stdout] 353 |         pub fn remain_key(&self) -> &[u8] {
[INFO] [stdout]     |                ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 357 |         pub fn val(&self) -> &[u8] {
[INFO] [stdout]     |                ^^^
[INFO] [stdout] ...
[INFO] [stdout] 361 |         pub fn update(&mut self, new_val: &[u8]) {
[INFO] [stdout]     |                ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 365 |         pub fn update_with_merge(&mut self, new_val: &[u8], merge_fn: fn(&[u8], &[u8]) -> Vec<u8>) {
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `c_key` and `meta_page_id` are never read
[INFO] [stdout]   --> src/access_method/hash_fbt/mod.rs:30:5
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub struct HashFosterBtree<T: MemPool> {
[INFO] [stdout]    |            --------------- fields in this struct
[INFO] [stdout] 29 |     pub mem_pool: Arc<T>,
[INFO] [stdout] 30 |     c_key: ContainerKey,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 31 |     num_buckets: usize,
[INFO] [stdout] 32 |     meta_page_id: PageId, // Stores the number of buckets and all the page ids of the root of the foster btrees
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `current` is never read
[INFO] [stdout]    --> src/access_method/hash_fbt/mod.rs:313:5
[INFO] [stdout]     |
[INFO] [stdout] 311 | pub struct HashFosterBtreeOrderedIter<T: Iterator<Item = (Vec<u8>, Vec<u8>)>> {
[INFO] [stdout]     |            -------------------------- field in this struct
[INFO] [stdout] 312 |     scanners: Vec<T>,
[INFO] [stdout] 313 |     current: usize,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `c_key` and `meta_page_id` are never read
[INFO] [stdout]    --> src/access_method/hash_fbt/mod.rs:390:5
[INFO] [stdout]     |
[INFO] [stdout] 388 | pub struct HashFosterBtreeAppendOnly<T: MemPool> {
[INFO] [stdout]     |            ------------------------- fields in this struct
[INFO] [stdout] 389 |     pub mem_pool: Arc<T>,
[INFO] [stdout] 390 |     c_key: ContainerKey,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 391 |     num_buckets: usize,
[INFO] [stdout] 392 |     meta_page_id: PageId, // Stores the number of buckets and all the page ids of the root of the foster btrees
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `to_string` is never used
[INFO] [stdout]    --> src/bp/buffer_pool.rs:240:12
[INFO] [stdout]     |
[INFO] [stdout] 211 | impl RuntimeStats {
[INFO] [stdout]     | ----------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 240 |     pub fn to_string(&self) -> String {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DummyEvictionPolicy` is never constructed
[INFO] [stdout]   --> src/bp/eviction_policy.rs:19:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct DummyEvictionPolicy; // Used for in-memory pool
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `c_key` and `mem_pool` are never read
[INFO] [stdout]   --> src/mvcc_index/dual_heap_hash/chained_hash_bucket_second.rs:29:5
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub struct DualChainBucket<T: MemPool> {
[INFO] [stdout]    |            --------------- fields in this struct
[INFO] [stdout] 29 |     c_key: ContainerKey,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 30 |     mem_pool: Arc<T>,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `meta_page_id` and `meta_frame_id` are never read
[INFO] [stdout]   --> src/mvcc_index/hash_heap/hash_heap_table.rs:37:5
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub struct HeapHashTable<T: MemPool + 'static> {
[INFO] [stdout]    |            ------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 37 |     meta_page_id: PageId,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 38 |     meta_frame_id: AtomicU32,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `create_key_from_item` is never used
[INFO] [stdout]   --> src/tpcc/record_definitions.rs:37:8
[INFO] [stdout]    |
[INFO] [stdout] 30 | impl ItemKey {
[INFO] [stdout]    | ------------ associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 37 |     fn create_key_from_item(item: &Item) -> Self {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `from_num`, `copy_from`, `get_d_id`, and `get_w_id` are never used
[INFO] [stdout]    --> src/tpcc/record_definitions.rs:228:8
[INFO] [stdout]     |
[INFO] [stdout] 220 | impl CustomerSecondaryKey {
[INFO] [stdout]     | ------------------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 228 |     fn from_num(num: u32) -> Self {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 235 |     fn copy_from(other: &Self) -> Self {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 241 |     fn get_d_id(&self) -> u8 {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 249 |     fn get_w_id(&self) -> u16 {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `o_id`, `d_id`, `w_id`, and `create_key_from_order` are never used
[INFO] [stdout]    --> src/tpcc/record_definitions.rs:325:8
[INFO] [stdout]     |
[INFO] [stdout] 324 | impl OrderKey {
[INFO] [stdout]     | ------------- associated items in this implementation
[INFO] [stdout] 325 |     fn o_id(&self) -> u32 {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 329 |     fn d_id(&self) -> u8 {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 333 |     fn w_id(&self) -> u16 {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 346 |     fn create_key_from_order(o: &Order) -> Self {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `ol_number`, `o_id`, `d_id`, `w_id`, and `create_key_from_orderline` are never used
[INFO] [stdout]    --> src/tpcc/record_definitions.rs:434:8
[INFO] [stdout]     |
[INFO] [stdout] 433 | impl OrderLineKey {
[INFO] [stdout]     | ----------------- associated items in this implementation
[INFO] [stdout] 434 |     fn ol_number(&self) -> u8 {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 438 |     fn o_id(&self) -> u32 {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 442 |     fn d_id(&self) -> u8 {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 446 |     fn w_id(&self) -> u16 {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 462 |     fn create_key_from_orderline(ol: &OrderLine) -> Self {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `create_key_from_new_order` is never used
[INFO] [stdout]    --> src/tpcc/record_definitions.rs:513:8
[INFO] [stdout]     |
[INFO] [stdout] 486 | impl NewOrderKey {
[INFO] [stdout]     | ---------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 513 |     fn create_key_from_new_order(no: &NewOrder) -> Self {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `print` is never used
[INFO] [stdout]    --> src/tpcc/record_definitions.rs:886:8
[INFO] [stdout]     |
[INFO] [stdout] 832 | impl District {
[INFO] [stdout]     | ------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 886 |     fn print(&self) -> String {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SingleThreadLockTable` is never constructed
[INFO] [stdout]    --> src/txn_storage/locktable.rs:132:12
[INFO] [stdout]     |
[INFO] [stdout] 132 | pub struct SingleThreadLockTable {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/txn_storage/locktable.rs:150:12
[INFO] [stdout]     |
[INFO] [stdout] 149 | impl SingleThreadLockTable {
[INFO] [stdout]     | -------------------------- associated items in this implementation
[INFO] [stdout] 150 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 156 |     pub fn try_shared(&self, key: Vec<u8>) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 171 |     pub fn try_exclusive(&self, key: Vec<u8>) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 186 |     pub fn try_upgrade(&self, key: Vec<u8>) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 196 |     pub fn downgrade(&self, key: &[u8]) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 204 |     pub fn release_shared(&self, key: Vec<u8>) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 219 |     pub fn release_exclusive(&self, key: Vec<u8>) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 234 |     pub fn check_all_released(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 238 |     pub fn check_state(&self, key: &[u8]) {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MvccHashStorage` is never constructed
[INFO] [stdout]   --> src/txn_storage/mvcc_hash_storage/mod.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct MvccHashStorage<T: MemPool, M: MvccIndex<T>> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/txn_storage/mvcc_hash_storage/mod.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 28 | impl<T: MemPool, M: MvccIndex<T>> MvccHashStorage<T, M> {
[INFO] [stdout]    | ------------------------------------------------------- associated function in this implementation
[INFO] [stdout] 29 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `MvccHashIterator` is never used
[INFO] [stdout]   --> src/txn_storage/mvcc_hash_storage/mod.rs:40:10
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub enum MvccHashIterator {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `HashMap` is never constructed
[INFO] [stdout]   --> src/txn_storage/ondisk/mod.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub enum Storage<M: MemPool> {
[INFO] [stdout]    |          ------- variant in this enum
[INFO] [stdout] 23 |     HashMap(),
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `remove` is never used
[INFO] [stdout]    --> src/txn_storage/ondisk_2pl/mod.rs:199:12
[INFO] [stdout]     |
[INFO] [stdout] 177 | impl ReadWriteSet {
[INFO] [stdout]     | ----------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 199 |     pub fn remove(&self, key: &[u8]) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Storage` is never used
[INFO] [stdout]   --> src/txn_storage/ondisk_silo/mod.rs:10:10
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub enum Storage<M: MemPool> {
[INFO] [stdout]    |          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/txn_storage/ondisk_silo/mod.rs:19:8
[INFO] [stdout]     |
[INFO] [stdout]  18 | impl<M: MemPool> Storage<M> {
[INFO] [stdout]     | --------------------------- associated items in this implementation
[INFO] [stdout]  19 |     fn new(db_id: DatabaseId, c_id: ContainerId, c_type: ContainerDS, bp: Arc<M>) -> Self {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout]  35 |     fn load(db_id: DatabaseId, c_id: ContainerId, c_type: ContainerDS, bp: Arc<M>) -> Self {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout]  53 |     fn clear(&self) {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  57 |     fn insert(&self, key: Vec<u8>, val: Vec<u8>) -> Result<(), TxnStorageStatus> {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  68 |     fn get(&self, key: &[u8]) -> Result<Vec<u8>, TxnStorageStatus> {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout]  81 |     fn update(&self, key: &[u8], val: Vec<u8>) -> Result<(), TxnStorageStatus> {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  94 |     fn remove(&self, key: &[u8]) -> Result<(), TxnStorageStatus> {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     fn num_values(&self) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `OnDiskSiloStorage` is never constructed
[INFO] [stdout]    --> src/txn_storage/ondisk_silo/mod.rs:130:12
[INFO] [stdout]     |
[INFO] [stdout] 130 | pub struct OnDiskSiloStorage<T: MemPool> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_stats`, `reset_stats`, and `prefetch_page` are never used
[INFO] [stdout]   --> src/file_manager.rs:58:16
[INFO] [stdout]    |
[INFO] [stdout] 28 |     impl FileManager {
[INFO] [stdout]    |     ---------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 58 |         pub fn get_stats(&self) -> String {
[INFO] [stdout]    |                ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 68 |         pub fn reset_stats(&self) {
[INFO] [stdout]    |                ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 74 |         pub fn prefetch_page(&self, _page_id: PageId) -> Result<(), std::io::Error> {
[INFO] [stdout]    |                ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `HybridLatch` is never constructed
[INFO] [stdout]  --> src/hybrid_latch.rs:8:12
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub struct HybridLatch {
[INFO] [stdout]   |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `version`, `is_exclusive`, `release_exclusive`, and `try_exclusive` are never used
[INFO] [stdout]   --> src/hybrid_latch.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl HybridLatch {
[INFO] [stdout]    | ---------------- associated items in this implementation
[INFO] [stdout] 14 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 21 |     pub fn version(&self) -> u64 {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 25 |     pub fn is_exclusive(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 29 |     pub fn release_exclusive(&self) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 34 |     pub fn try_exclusive(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `HybridLatchGuardedStructure` is never constructed
[INFO] [stdout]   --> src/hybrid_latch.rs:39:12
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub struct HybridLatchGuardedStructure<T: Clone> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `optimistic_read`, and `write` are never used
[INFO] [stdout]   --> src/hybrid_latch.rs:45:12
[INFO] [stdout]    |
[INFO] [stdout] 44 | impl<T: Clone> HybridLatchGuardedStructure<T> {
[INFO] [stdout]    | --------------------------------------------- associated items in this implementation
[INFO] [stdout] 45 |     pub fn new(data: T) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 52 |     pub fn optimistic_read(&self) -> OptimisticReadGuard<T> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 69 |     pub fn write(&self) -> WriteGuard<T> {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `OptimisticReadGuard` is never constructed
[INFO] [stdout]   --> src/hybrid_latch.rs:86:12
[INFO] [stdout]    |
[INFO] [stdout] 86 | pub struct OptimisticReadGuard<T: Clone> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `validate`, `try_upgrade`, and `get` are never used
[INFO] [stdout]    --> src/hybrid_latch.rs:92:12
[INFO] [stdout]     |
[INFO] [stdout]  91 | impl<T: Clone> OptimisticReadGuard<T> {
[INFO] [stdout]     | ------------------------------------- methods in this implementation
[INFO] [stdout]  92 |     pub fn validate(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 104 |     pub fn try_upgrade(self) -> Option<WriteGuard<T>> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 124 |     pub unsafe fn get(&self) -> &T {
[INFO] [stdout]     |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `WriteGuard` is never constructed
[INFO] [stdout]    --> src/hybrid_latch.rs:129:12
[INFO] [stdout]     |
[INFO] [stdout] 129 | pub struct WriteGuard<T: Clone> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `log` is never used
[INFO] [stdout]   --> src/logger.rs:20:8
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub fn log(level: &str, file: &str, line: u32, message: &str) {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `SingleTsHashTable` is never used
[INFO] [stdout]   --> src/naive_hash_index/naive_hash_table/mod.rs:12:11
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub trait SingleTsHashTable<T: MemPool>: Send + Sync + Any {
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `first_page_write` is never used
[INFO] [stdout]    --> src/naive_hash_index/naive_hash_table/hash_join_chain.rs:308:8
[INFO] [stdout]     |
[INFO] [stdout]  37 | impl<T: MemPool + 'static> HeapHashChain<T> {
[INFO] [stdout]     | ------------------------------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 308 |     fn first_page_write(&self) -> FrameWriteGuard {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/naive_hash_index/naive_hash_table/hash_join_page.rs:234:8
[INFO] [stdout]     |
[INFO] [stdout] 225 | pub trait NaiveHashPage {
[INFO] [stdout]     |           ------------- associated items in this trait
[INFO] [stdout] ...
[INFO] [stdout] 234 |     fn insert_recent_history(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 252 |     fn write_bytes(&mut self, offset: usize, bytes: &[u8]);
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 262 |     fn require_space(entry: &MvccEntry) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 279 |     fn set_next_page_frame(&mut self, page_frame: (PageId, u32)) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 293 |     fn set_slot_count(&mut self, slot_count: usize) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 297 |     fn slot_end_offset(&self) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 310 |     fn decrease_total_bytes_used(&mut self, bytes: usize) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 317 |     fn decrease_slot_count(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 325 |     fn slot(&self, slot_id: usize) -> Slot {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 330 |     fn unsafe_slot_mut(&mut self, slot_id: usize) -> &mut Slot {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 341 |     fn record_ref_from_slotid(&self, slot_id: usize) -> RecordRef {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 362 |     fn set_record_ref_at_offset(&mut self, offset: usize, rec: &RecordRef) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 369 |     fn delete_slot_at_id(&mut self, slot_id: usize);
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 375 |     fn slot_pkey_matches_new(&self, slot: &Slot, pkey: &[u8]) -> bool;
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 376 |     fn get_pkey_from_slot(&self, slot: &Slot) -> &[u8];
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 382 |     fn slot_cmp_key(&self, slot_id: usize, search_key: &[u8]) -> std::cmp::Ordering;
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]   --> src/naive_hash_index/naive_hash_table/hash_join_page.rs:36:16
[INFO] [stdout]    |
[INFO] [stdout] 12 |     impl Header {
[INFO] [stdout]    |     ----------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 36 |         pub fn next_page_id(&self) -> Option<PageId> {
[INFO] [stdout]    |                ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 44 |         pub fn set_next_page_id(&mut self, next_page_id: PageId) {
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 48 |         pub fn next_frame_id(&self) -> u32 {
[INFO] [stdout]    |                ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 52 |         pub fn set_next_frame_id(&mut self, next_frame_id: u32) {
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 64 |         pub fn inc_total_bytes_used(&mut self, bytes: usize) {
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 68 |         pub fn dec_total_bytes_used(&mut self, bytes: usize) {
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 76 |         pub fn set_slot_count(&mut self, slot_count: usize) {
[INFO] [stdout]    |                ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 84 |         pub fn dec_slot_count(&mut self) {
[INFO] [stdout]    |                ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `unsafe_from_bytes_mut`, `tx_id`, `set_val_size`, and `set_offset` are never used
[INFO] [stdout]    --> src/naive_hash_index/naive_hash_table/hash_join_page.rs:143:23
[INFO] [stdout]     |
[INFO] [stdout] 134 |     impl Slot {
[INFO] [stdout]     |     --------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 143 |         pub unsafe fn unsafe_from_bytes_mut(bytes: &[u8]) -> &mut Slot {
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 188 |         pub fn tx_id(&self) -> TxId {
[INFO] [stdout]     |                ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 196 |         pub fn set_val_size(&mut self, val_size: usize) {
[INFO] [stdout]     |                ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 204 |         pub fn set_offset(&mut self, offset: usize) {
[INFO] [stdout]     |                ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PAGE_ID_SIZE` is never used
[INFO] [stdout]   --> src/naive_hash_index/naive_hash_table/hash_join_table.rs:21:11
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub const PAGE_ID_SIZE: usize = std::mem::size_of::<PageId>();
[INFO] [stdout]    |           ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `DEAFAULT_FIRST_BUCKET_NUM` is never used
[INFO] [stdout]   --> src/naive_hash_index/naive_hash_table/hash_join_table.rs:22:11
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub const DEAFAULT_FIRST_BUCKET_NUM: usize = 128;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `c_key`, `mem_pool`, `meta_page_id`, and `meta_frame_id` are never read
[INFO] [stdout]   --> src/naive_hash_index/naive_hash_table/hash_join_table.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct NaiveHashTable<T: MemPool + 'static> {
[INFO] [stdout]    |            -------------- fields in this struct
[INFO] [stdout] 25 |     c_key: ContainerKey,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 26 |     mem_pool: Arc<T>,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 27 |
[INFO] [stdout] 28 |     meta_page_id: PageId,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 29 |     meta_frame_id: AtomicU32,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `as_any`, `create`, and `split_at_ts` are never used
[INFO] [stdout]    --> src/naive_hash_index/naive_hash_table/hash_join_table.rs:37:12
[INFO] [stdout]     |
[INFO] [stdout]  35 | impl<T: MemPool + 'static> NaiveHashTable<T> {
[INFO] [stdout]     | -------------------------------------------- associated items in this implementation
[INFO] [stdout]  36 |     /// Creates a new hash join table with the default number of buckets.
[INFO] [stdout]  37 |     pub fn new(c_key: ContainerKey, mem_pool: Arc<T>) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 129 |     fn as_any(&self) -> &dyn std::any::Any {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 132 |     fn create(c_key: ContainerKey, mem_pool: Arc<T>) -> Result<Self, AccessMethodError>
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 138 |     fn split_at_ts(&self, ts: Timestamp) -> Result<(), AccessMethodError> {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `UpdatesAtTs` is never constructed
[INFO] [stdout]   --> src/naive_hash_index/naive_mvht.rs:21:8
[INFO] [stdout]    |
[INFO] [stdout] 21 | struct UpdatesAtTs {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `KeyAndValue` is never constructed
[INFO] [stdout]   --> src/naive_hash_index/naive_mvht.rs:25:8
[INFO] [stdout]    |
[INFO] [stdout] 25 | struct KeyAndValue {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/access_method/append_only_store/mod.rs:143:19
[INFO] [stdout]     |
[INFO] [stdout] 143 |     fn write_page(&self, page_key: &PageFrameKey) -> FrameWriteGuard {
[INFO] [stdout]     |                   ^^^^^ the lifetime is elided here  ^^^^^^^^^^^^^^^ the same lifetime is hidden 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] 143 |     fn write_page(&self, page_key: &PageFrameKey) -> FrameWriteGuard<'_> {
[INFO] [stdout]     |                                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/access_method/chain/read_optimized_chain.rs:53:18
[INFO] [stdout]    |
[INFO] [stdout] 53 |     fn read_page(&self, page_key: PageFrameKey) -> FrameReadGuard {
[INFO] [stdout]    |                  ^^^^^ the lifetime is elided here ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 53 |     fn read_page(&self, page_key: PageFrameKey) -> FrameReadGuard<'_> {
[INFO] [stdout]    |                                                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/access_method/chain/read_optimized_chain.rs:90:19
[INFO] [stdout]    |
[INFO] [stdout] 90 |     fn first_page(&self) -> FrameReadGuard {
[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] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 90 |     fn first_page(&self) -> FrameReadGuard<'_> {
[INFO] [stdout]    |                                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/access_method/chain/read_optimized_chain.rs:138:9
[INFO] [stdout]     |
[INFO] [stdout] 138 |         &self,
[INFO] [stdout]     |         ^^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 141 |     ) -> Result<FrameWriteGuard, AccessMethodError> {
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 141 |     ) -> Result<FrameWriteGuard<'_>, AccessMethodError> {
[INFO] [stdout]     |                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/access_method/chain/read_optimized_chain.rs:170:9
[INFO] [stdout]     |
[INFO] [stdout] 170 |         &self,
[INFO] [stdout]     |         ^^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 173 |     ) -> Result<FrameWriteGuard, AccessMethodError> {
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 173 |     ) -> Result<FrameWriteGuard<'_>, AccessMethodError> {
[INFO] [stdout]     |                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/access_method/chain/read_optimized_chain.rs:254:9
[INFO] [stdout]     |
[INFO] [stdout] 254 |         &self,
[INFO] [stdout]     |         ^^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 258 |     ) -> Result<FrameWriteGuard, AccessMethodError> {
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 258 |     ) -> Result<FrameWriteGuard<'_>, AccessMethodError> {
[INFO] [stdout]     |                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/access_method/chain/read_optimized_chain.rs:293:9
[INFO] [stdout]     |
[INFO] [stdout] 293 |         &self,
[INFO] [stdout]     |         ^^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 297 |     ) -> Result<FrameWriteGuard, AccessMethodError> {
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 297 |     ) -> Result<FrameWriteGuard<'_>, AccessMethodError> {
[INFO] [stdout]     |                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/access_method/chain/read_optimized_chain.rs:354:9
[INFO] [stdout]     |
[INFO] [stdout] 354 |         &self,
[INFO] [stdout]     |         ^^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 358 |     ) -> Result<FrameWriteGuard, AccessMethodError> {
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 358 |     ) -> Result<FrameWriteGuard<'_>, AccessMethodError> {
[INFO] [stdout]     |                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/access_method/chain/read_optimized_chain.rs:393:9
[INFO] [stdout]     |
[INFO] [stdout] 393 |         &self,
[INFO] [stdout]     |         ^^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 397 |     ) -> Result<FrameWriteGuard, AccessMethodError> {
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 397 |     ) -> Result<FrameWriteGuard<'_>, AccessMethodError> {
[INFO] [stdout]     |                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/access_method/fbt/foster_btree.rs:1446:22
[INFO] [stdout]      |
[INFO] [stdout] 1446 |     fn allocate_page(&self) -> FrameWriteGuard {
[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] help: use `'_` for type paths
[INFO] [stdout]      |
[INFO] [stdout] 1446 |     fn allocate_page(&self) -> FrameWriteGuard<'_> {
[INFO] [stdout]      |                                               ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/access_method/fbt/foster_btree.rs:1473:18
[INFO] [stdout]      |
[INFO] [stdout] 1473 |     fn read_page(&self, page_key: PageFrameKey) -> FrameReadGuard {
[INFO] [stdout]      |                  ^^^^^ the lifetime is elided here ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]      |
[INFO] [stdout]      = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]      |
[INFO] [stdout] 1473 |     fn read_page(&self, page_key: PageFrameKey) -> FrameReadGuard<'_> {
[INFO] [stdout]      |                                                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/access_method/fbt/foster_btree.rs:1707:9
[INFO] [stdout]      |
[INFO] [stdout] 1707 |         &self,
[INFO] [stdout]      |         ^^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 1710 |     ) -> FrameReadGuard {
[INFO] [stdout]      |          ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]      |
[INFO] [stdout]      = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]      |
[INFO] [stdout] 1710 |     ) -> FrameReadGuard<'_> {
[INFO] [stdout]      |                        ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/access_method/fbt/foster_btree.rs:1736:38
[INFO] [stdout]      |
[INFO] [stdout] 1736 |     pub fn traverse_to_leaf_for_read(&self, key: &[u8]) -> FrameReadGuard {
[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] help: use `'_` for type paths
[INFO] [stdout]      |
[INFO] [stdout] 1736 |     pub fn traverse_to_leaf_for_read(&self, key: &[u8]) -> FrameReadGuard<'_> {
[INFO] [stdout]      |                                                                          ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/access_method/fbt/foster_btree.rs:1741:9
[INFO] [stdout]      |
[INFO] [stdout] 1741 |         &self,
[INFO] [stdout]      |         ^^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 1744 |     ) -> FrameReadGuard {
[INFO] [stdout]      |          ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]      |
[INFO] [stdout]      = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]      |
[INFO] [stdout] 1744 |     ) -> FrameReadGuard<'_> {
[INFO] [stdout]      |                        ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/access_method/fbt/foster_btree.rs:1848:9
[INFO] [stdout]      |
[INFO] [stdout] 1848 |         &self,
[INFO] [stdout]      |         ^^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 1851 |     ) -> FrameWriteGuard {
[INFO] [stdout]      |          ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]      |
[INFO] [stdout]      = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]      |
[INFO] [stdout] 1851 |     ) -> FrameWriteGuard<'_> {
[INFO] [stdout]      |                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/access_method/fbt/foster_btree.rs:1899:9
[INFO] [stdout]      |
[INFO] [stdout] 1899 |         &self,
[INFO] [stdout]      |         ^^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 1902 |     ) -> Result<FrameWriteGuard, AccessMethodError> {
[INFO] [stdout]      |                 ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]      |
[INFO] [stdout]      = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]      |
[INFO] [stdout] 1902 |     ) -> Result<FrameWriteGuard<'_>, AccessMethodError> {
[INFO] [stdout]      |                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/access_method/fbt/foster_btree.rs:1918:9
[INFO] [stdout]      |
[INFO] [stdout] 1918 |         &self,
[INFO] [stdout]      |         ^^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 1921 |     ) -> FrameWriteGuard {
[INFO] [stdout]      |          ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]      |
[INFO] [stdout]      = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]      |
[INFO] [stdout] 1921 |     ) -> FrameWriteGuard<'_> {
[INFO] [stdout]      |                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/access_method/fbt/foster_btree.rs:1950:35
[INFO] [stdout]      |
[INFO] [stdout] 1950 |     fn traverse_to_leaf_for_write(&self, key: &[u8]) -> FrameWriteGuard {
[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] help: use `'_` for type paths
[INFO] [stdout]      |
[INFO] [stdout] 1950 |     fn traverse_to_leaf_for_write(&self, key: &[u8]) -> FrameWriteGuard<'_> {
[INFO] [stdout]      |                                                                        ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/access_method/fbt/foster_btree.rs:2349:14
[INFO] [stdout]      |
[INFO] [stdout] 2349 |     fn l_key(&self) -> BTreeKey {
[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] help: use `'_` for type paths
[INFO] [stdout]      |
[INFO] [stdout] 2349 |     fn l_key(&self) -> BTreeKey<'_> {
[INFO] [stdout]      |                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/access_method/fbt/foster_btree.rs:2357:14
[INFO] [stdout]      |
[INFO] [stdout] 2357 |     fn r_key(&self) -> BTreeKey {
[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] help: use `'_` for type paths
[INFO] [stdout]      |
[INFO] [stdout] 2357 |     fn r_key(&self) -> BTreeKey<'_> {
[INFO] [stdout]      |                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/access_method/fbt/foster_btree.rs:2365:27
[INFO] [stdout]      |
[INFO] [stdout] 2365 |     fn current_high_fence(&self) -> BTreeKey {
[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] help: use `'_` for type paths
[INFO] [stdout]      |
[INFO] [stdout] 2365 |     fn current_high_fence(&self) -> BTreeKey<'_> {
[INFO] [stdout]      |                                             ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/access_method/fbt/foster_btree.rs:2651:9
[INFO] [stdout]      |
[INFO] [stdout] 2651 |         &self,
[INFO] [stdout]      |         ^^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 2654 |     ) -> FrameReadGuard {
[INFO] [stdout]      |          ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]      |
[INFO] [stdout]      = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]      |
[INFO] [stdout] 2654 |     ) -> FrameReadGuard<'_> {
[INFO] [stdout]      |                        ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/access_method/fbt/foster_btree.rs:2662:9
[INFO] [stdout]      |
[INFO] [stdout] 2662 |         &self,
[INFO] [stdout]      |         ^^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 2665 |     ) -> FrameWriteGuard {
[INFO] [stdout]      |          ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]      |
[INFO] [stdout]      = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]      |
[INFO] [stdout] 2665 |     ) -> FrameWriteGuard<'_> {
[INFO] [stdout]      |                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/access_method/fbt/foster_btree_page.rs:233:22
[INFO] [stdout]     |
[INFO] [stdout] 233 |     fn get_low_fence(&self) -> BTreeKey;
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 233 |     fn get_low_fence(&self) -> BTreeKey<'_>;
[INFO] [stdout]     |                                        ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/access_method/fbt/foster_btree_page.rs:234:23
[INFO] [stdout]     |
[INFO] [stdout] 234 |     fn get_high_fence(&self) -> BTreeKey;
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 234 |     fn get_high_fence(&self) -> BTreeKey<'_>;
[INFO] [stdout]     |                                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/access_method/fbt/foster_btree_page.rs:235:14
[INFO] [stdout]     |
[INFO] [stdout] 235 |     fn range(&self) -> (BTreeKey, BTreeKey);
[INFO] [stdout]     |              ^^^^^      ^^^^^^^^  ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |              |          |
[INFO] [stdout]     |              |          the same lifetime is hidden here
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 235 |     fn range(&self) -> (BTreeKey<'_>, BTreeKey<'_>);
[INFO] [stdout]     |                                 ++++          ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/access_method/fbt/foster_btree_page.rs:277:22
[INFO] [stdout]     |
[INFO] [stdout] 277 |     fn get_btree_key(&self, slot_id: u32) -> BTreeKey;
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 277 |     fn get_btree_key(&self, slot_id: u32) -> BTreeKey<'_>;
[INFO] [stdout]     |                                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/access_method/fbt/foster_btree_page.rs:613:22
[INFO] [stdout]     |
[INFO] [stdout] 613 |     fn get_low_fence(&self) -> BTreeKey {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 613 |     fn get_low_fence(&self) -> BTreeKey<'_> {
[INFO] [stdout]     |                                        ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/access_method/fbt/foster_btree_page.rs:624:23
[INFO] [stdout]     |
[INFO] [stdout] 624 |     fn get_high_fence(&self) -> BTreeKey {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 624 |     fn get_high_fence(&self) -> BTreeKey<'_> {
[INFO] [stdout]     |                                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/access_method/fbt/foster_btree_page.rs:635:14
[INFO] [stdout]     |
[INFO] [stdout] 635 |     fn range(&self) -> (BTreeKey, BTreeKey) {
[INFO] [stdout]     |              ^^^^^      ^^^^^^^^  ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |              |          |
[INFO] [stdout]     |              |          the same lifetime is hidden here
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 635 |     fn range(&self) -> (BTreeKey<'_>, BTreeKey<'_>) {
[INFO] [stdout]     |                                 ++++          ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/access_method/fbt/foster_btree_page.rs:757:22
[INFO] [stdout]     |
[INFO] [stdout] 757 |     fn get_btree_key(&self, slot_id: u32) -> BTreeKey {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 757 |     fn get_btree_key(&self, slot_id: u32) -> BTreeKey<'_> {
[INFO] [stdout]     |                                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/access_method/hashindex/pagedhashmap.rs:170:9
[INFO] [stdout]     |
[INFO] [stdout] 170 |         &self,
[INFO] [stdout]     |         ^^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 173 |     ) -> Result<FrameWriteGuard, AccessMethodError> {
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 173 |     ) -> Result<FrameWriteGuard<'_>, AccessMethodError> {
[INFO] [stdout]     |                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/access_method/hashindex/pagedhashmap.rs:197:9
[INFO] [stdout]     |
[INFO] [stdout] 197 |         &self,
[INFO] [stdout]     |         ^^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 200 |     ) -> Result<FrameWriteGuard, AccessMethodError> {
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 200 |     ) -> Result<FrameWriteGuard<'_>, AccessMethodError> {
[INFO] [stdout]     |                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/access_method/hashindex/pagedhashmap.rs:237:18
[INFO] [stdout]     |
[INFO] [stdout] 237 |     fn read_page(&self, page_key: PageFrameKey) -> FrameReadGuard {
[INFO] [stdout]     |                  ^^^^^ the lifetime is elided here ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 237 |     fn read_page(&self, page_key: PageFrameKey) -> FrameReadGuard<'_> {
[INFO] [stdout]     |                                                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/access_method/hashindex/pagedhashmap.rs:263:19
[INFO] [stdout]     |
[INFO] [stdout] 263 |     fn write_page(&self, page_key: PageFrameKey) -> FrameWriteGuard {
[INFO] [stdout]     |                   ^^^^^ the lifetime is elided here ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 263 |     fn write_page(&self, page_key: PageFrameKey) -> FrameWriteGuard<'_> {
[INFO] [stdout]     |                                                                    ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/access_method/hashindex/pagedhashmap.rs:339:9
[INFO] [stdout]     |
[INFO] [stdout] 339 |         &self,
[INFO] [stdout]     |         ^^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 342 |     ) -> Result<(FrameWriteGuard, u16), AccessMethodError> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 342 |     ) -> Result<(FrameWriteGuard<'_>, u16), AccessMethodError> {
[INFO] [stdout]     |                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/access_method/hashindex/pagedhashmap.rs:366:9
[INFO] [stdout]     |
[INFO] [stdout] 366 |         &self,
[INFO] [stdout]     |         ^^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 369 |     ) -> Result<(FrameWriteGuard, u16), AccessMethodError> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 369 |     ) -> Result<(FrameWriteGuard<'_>, u16), AccessMethodError> {
[INFO] [stdout]     |                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/bp/buffer_frame.rs:47:17
[INFO] [stdout]    |
[INFO] [stdout] 47 |     pub fn read(&self) -> FrameReadGuard {
[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] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 47 |     pub fn read(&self) -> FrameReadGuard<'_> {
[INFO] [stdout]    |                                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/bp/buffer_frame.rs:55:21
[INFO] [stdout]    |
[INFO] [stdout] 55 |     pub fn try_read(&self) -> Option<FrameReadGuard> {
[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] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 55 |     pub fn try_read(&self) -> Option<FrameReadGuard<'_>> {
[INFO] [stdout]    |                                                    ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/bp/buffer_frame.rs:66:18
[INFO] [stdout]    |
[INFO] [stdout] 66 |     pub fn write(&self, make_dirty: bool) -> FrameWriteGuard {
[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] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 66 |     pub fn write(&self, make_dirty: bool) -> FrameWriteGuard<'_> {
[INFO] [stdout]    |                                                             ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/bp/buffer_frame.rs:77:22
[INFO] [stdout]    |
[INFO] [stdout] 77 |     pub fn try_write(&self, make_dirty: bool) -> Option<FrameWriteGuard> {
[INFO] [stdout]    |                      ^^^^^ the lifetime is elided here  ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 77 |     pub fn try_write(&self, make_dirty: bool) -> Option<FrameWriteGuard<'_>> {
[INFO] [stdout]    |                                                                        ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/bp/buffer_pool.rs:294:26
[INFO] [stdout]     |
[INFO] [stdout] 294 |     pub fn choose_victim(&mut self) -> Option<FrameWriteGuard> {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 294 |     pub fn choose_victim(&mut self) -> Option<FrameWriteGuard<'_>> {
[INFO] [stdout]     |                                                              ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/bp/buffer_pool.rs:516:22
[INFO] [stdout]     |
[INFO] [stdout] 516 |     fn choose_victim(&self) -> Option<FrameWriteGuard> {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 516 |     fn choose_victim(&self) -> Option<FrameWriteGuard<'_>> {
[INFO] [stdout]     |                                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/bp/buffer_pool.rs:589:9
[INFO] [stdout]     |
[INFO] [stdout] 589 |         &self,
[INFO] [stdout]     |         ^^^^^ the lifetime is elided here
[INFO] [stdout] 590 |         c_key: ContainerKey,
[INFO] [stdout] 591 |     ) -> Result<FrameWriteGuard, MemPoolStatus> {
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 591 |     ) -> Result<FrameWriteGuard<'_>, MemPoolStatus> {
[INFO] [stdout]     |                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/bp/buffer_pool.rs:625:27
[INFO] [stdout]     |
[INFO] [stdout] 625 |     fn get_page_for_write(&self, key: PageFrameKey) -> Result<FrameWriteGuard, MemPoolStatus> {
[INFO] [stdout]     |                           ^^^^^ the lifetime is elided here   ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 625 |     fn get_page_for_write(&self, key: PageFrameKey) -> Result<FrameWriteGuard<'_>, MemPoolStatus> {
[INFO] [stdout]     |                                                                              ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/bp/buffer_pool.rs:741:26
[INFO] [stdout]     |
[INFO] [stdout] 741 |     fn get_page_for_read(&self, key: PageFrameKey) -> Result<FrameReadGuard, MemPoolStatus> {
[INFO] [stdout]     |                          ^^^^^ the lifetime is elided here   ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 741 |     fn get_page_for_read(&self, key: PageFrameKey) -> Result<FrameReadGuard<'_>, MemPoolStatus> {
[INFO] [stdout]     |                                                                            ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/bp/in_mem_pool.rs:62:9
[INFO] [stdout]    |
[INFO] [stdout] 62 |         &self,
[INFO] [stdout]    |         ^^^^^ the lifetime is elided here
[INFO] [stdout] 63 |         c_key: ContainerKey,
[INFO] [stdout] 64 |     ) -> Result<FrameWriteGuard, MemPoolStatus> {
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 64 |     ) -> Result<FrameWriteGuard<'_>, MemPoolStatus> {
[INFO] [stdout]    |                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/bp/in_mem_pool.rs:96:27
[INFO] [stdout]    |
[INFO] [stdout] 96 |     fn get_page_for_write(&self, key: PageFrameKey) -> Result<FrameWriteGuard, MemPoolStatus> {
[INFO] [stdout]    |                           ^^^^^ the lifetime is elided here   ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 96 |     fn get_page_for_write(&self, key: PageFrameKey) -> Result<FrameWriteGuard<'_>, MemPoolStatus> {
[INFO] [stdout]    |                                                                              ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/bp/in_mem_pool.rs:117:26
[INFO] [stdout]     |
[INFO] [stdout] 117 |     fn get_page_for_read(&self, key: PageFrameKey) -> Result<FrameReadGuard, MemPoolStatus> {
[INFO] [stdout]     |                          ^^^^^ the lifetime is elided here   ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 117 |     fn get_page_for_read(&self, key: PageFrameKey) -> Result<FrameReadGuard<'_>, MemPoolStatus> {
[INFO] [stdout]     |                                                                            ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/bp/mem_pool_trait.rs:179:9
[INFO] [stdout]     |
[INFO] [stdout] 179 |         &self,
[INFO] [stdout]     |         ^^^^^ the lifetime is elided here
[INFO] [stdout] 180 |         c_key: ContainerKey,
[INFO] [stdout] 181 |     ) -> Result<FrameWriteGuard, MemPoolStatus>;
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 181 |     ) -> Result<FrameWriteGuard<'_>, MemPoolStatus>;
[INFO] [stdout]     |                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/bp/mem_pool_trait.rs:186:27
[INFO] [stdout]     |
[INFO] [stdout] 186 |     fn get_page_for_write(&self, key: PageFrameKey) -> Result<FrameWriteGuard, MemPoolStatus>;
[INFO] [stdout]     |                           ^^^^^ the lifetime is elided here   ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 186 |     fn get_page_for_write(&self, key: PageFrameKey) -> Result<FrameWriteGuard<'_>, MemPoolStatus>;
[INFO] [stdout]     |                                                                              ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/bp/mem_pool_trait.rs:191:26
[INFO] [stdout]     |
[INFO] [stdout] 191 |     fn get_page_for_read(&self, key: PageFrameKey) -> Result<FrameReadGuard, MemPoolStatus>;
[INFO] [stdout]     |                          ^^^^^ the lifetime is elided here   ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 191 |     fn get_page_for_read(&self, key: PageFrameKey) -> Result<FrameReadGuard<'_>, MemPoolStatus>;
[INFO] [stdout]     |                                                                            ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]   --> src/mvcc_index/dual_heap_hash/mod.rs:21:14
[INFO] [stdout]    |
[INFO] [stdout] 21 |     unsafe { PARAMS.get().as_ref().unwrap().clone().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]    = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/mvcc_index/dual_heap_hash/chained_hash_table.rs:150:13
[INFO] [stdout]     |
[INFO] [stdout] 150 |             bucket.scan_into_vec(ts, results);
[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] 150 |             let _ = bucket.scan_into_vec(ts, results);
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/mvcc_index/hash_common.rs:104:41
[INFO] [stdout]     |
[INFO] [stdout] 104 | pub fn write_page<T: MemPool>(mem_pool: &T, page_key: PageFrameKey) -> FrameWriteGuard {
[INFO] [stdout]     |                                         ^^ the lifetime is elided here ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 104 | pub fn write_page<T: MemPool>(mem_pool: &T, page_key: PageFrameKey) -> FrameWriteGuard<'_> {
[INFO] [stdout]     |                                                                                       ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/mvcc_index/hash_common.rs:126:15
[INFO] [stdout]     |
[INFO] [stdout] 126 |     mem_pool: &T,
[INFO] [stdout]     |               ^^ the lifetime is elided here
[INFO] [stdout] 127 |     page_key: PageFrameKey,
[INFO] [stdout] 128 | ) -> Option<FrameWriteGuard> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 128 | ) -> Option<FrameWriteGuard<'_>> {
[INFO] [stdout]     |                            ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/mvcc_index/hash_common.rs:145:50
[INFO] [stdout]     |
[INFO] [stdout] 145 | pub fn read_page<T: MemPool + 'static>(mem_pool: &T, page_key: PageFrameKey) -> FrameReadGuard {
[INFO] [stdout]     |                                                  ^^ the lifetime is elided here ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 145 | pub fn read_page<T: MemPool + 'static>(mem_pool: &T, page_key: PageFrameKey) -> FrameReadGuard<'_> {
[INFO] [stdout]     |                                                                                               ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/mvcc_index/hash_common.rs:166:15
[INFO] [stdout]     |
[INFO] [stdout] 166 |     mem_pool: &T,
[INFO] [stdout]     |               ^^ the lifetime is elided here
[INFO] [stdout] 167 |     page_key: PageFrameKey,
[INFO] [stdout] 168 | ) -> Option<FrameReadGuard> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 168 | ) -> Option<FrameReadGuard<'_>> {
[INFO] [stdout]     |                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/mvcc_index/hash_join_page.rs:674:31
[INFO] [stdout]     |
[INFO] [stdout] 674 |     fn record_ref_from_slotid(&self, slot_id: usize) -> RecordRef {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 674 |     fn record_ref_from_slotid(&self, slot_id: usize) -> RecordRef<'_> {
[INFO] [stdout]     |                                                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/mvcc_index/hash_join_page.rs:679:29
[INFO] [stdout]     |
[INFO] [stdout] 679 |     fn record_ref_from_slot(&self, slot: &Slot) -> RecordRef {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 679 |     fn record_ref_from_slot(&self, slot: &Slot) -> RecordRef<'_> {
[INFO] [stdout]     |                                                             ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/mvcc_index/hash_join_page.rs:707:26
[INFO] [stdout]     |
[INFO] [stdout] 707 |     fn slot_pkey_matches(&self, slot: &Slot, pkey: &[u8]) -> Option<RecordRef>;
[INFO] [stdout]     |                          ^^^^^ the lifetime is elided here          ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 707 |     fn slot_pkey_matches(&self, slot: &Slot, pkey: &[u8]) -> Option<RecordRef<'_>>;
[INFO] [stdout]     |                                                                              ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/mvcc_index/hash_join_page.rs:1514:26
[INFO] [stdout]      |
[INFO] [stdout] 1514 |     fn slot_pkey_matches(&self, slot: &Slot, pkey: &[u8]) -> Option<RecordRef> {
[INFO] [stdout]      |                          ^^^^^ the lifetime is elided here          ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]      |
[INFO] [stdout]      = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]      |
[INFO] [stdout] 1514 |     fn slot_pkey_matches(&self, slot: &Slot, pkey: &[u8]) -> Option<RecordRef<'_>> {
[INFO] [stdout]      |                                                                              ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/mvcc_index/hash_join_heap_chain.rs:223:9
[INFO] [stdout]     |
[INFO] [stdout] 223 |         &self,
[INFO] [stdout]     |         ^^^^^ the lifetime is elided here
[INFO] [stdout] 224 |         page_key: PageFrameKey,
[INFO] [stdout] 225 |     ) -> Result<FrameWriteGuard, AccessMethodError> {
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 225 |     ) -> Result<FrameWriteGuard<'_>, AccessMethodError> {
[INFO] [stdout]     |                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/mvcc_index/hash_join_heap_chain.rs:251:9
[INFO] [stdout]     |
[INFO] [stdout] 251 |         &self,
[INFO] [stdout]     |         ^^^^^ the lifetime is elided here
[INFO] [stdout] 252 |         page_key: PageFrameKey,
[INFO] [stdout] 253 |     ) -> Result<FrameWriteGuard, AccessMethodError> {
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 253 |     ) -> Result<FrameWriteGuard<'_>, AccessMethodError> {
[INFO] [stdout]     |                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/mvcc_index/hash_join_heap_chain.rs:848:19
[INFO] [stdout]     |
[INFO] [stdout] 848 |     fn first_page(&self) -> FrameReadGuard {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 848 |     fn first_page(&self) -> FrameReadGuard<'_> {
[INFO] [stdout]     |                                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/mvcc_index/hash_join_heap_chain.rs:863:25
[INFO] [stdout]     |
[INFO] [stdout] 863 |     fn first_page_write(&self) -> FrameWriteGuard {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 863 |     fn first_page_write(&self) -> FrameWriteGuard<'_> {
[INFO] [stdout]     |                                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/mvcc_index/hash_join_heap_chain.rs:878:27
[INFO] [stdout]     |
[INFO] [stdout] 878 |     pub fn scan_all(self: &Arc<Self>) -> Result<HeapChainScanner<T>, AccessMethodError> {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 878 |     pub fn scan_all(self: &Arc<Self>) -> Result<HeapChainScanner<'_, T>, AccessMethodError> {
[INFO] [stdout]     |                                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/txn_storage/ondisk_2pl/mod.rs:204:17
[INFO] [stdout]     |
[INFO] [stdout] 204 |     pub fn iter(&self) -> std::collections::hash_map::Iter<Vec<u8>, RWEntry> {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 204 |     pub fn iter(&self) -> std::collections::hash_map::Iter<'_, Vec<u8>, RWEntry> {
[INFO] [stdout]     |                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/naive_hash_index/naive_hash_table/hash_join_chain.rs:186:9
[INFO] [stdout]     |
[INFO] [stdout] 186 |         &self,
[INFO] [stdout]     |         ^^^^^ the lifetime is elided here
[INFO] [stdout] 187 |         page_key: PageFrameKey,
[INFO] [stdout] 188 |     ) -> Result<FrameWriteGuard, AccessMethodError> {
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 188 |     ) -> Result<FrameWriteGuard<'_>, AccessMethodError> {
[INFO] [stdout]     |                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/naive_hash_index/naive_hash_table/hash_join_chain.rs:214:9
[INFO] [stdout]     |
[INFO] [stdout] 214 |         &self,
[INFO] [stdout]     |         ^^^^^ the lifetime is elided here
[INFO] [stdout] 215 |         page_key: PageFrameKey,
[INFO] [stdout] 216 |     ) -> Result<FrameWriteGuard, AccessMethodError> {
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 216 |     ) -> Result<FrameWriteGuard<'_>, AccessMethodError> {
[INFO] [stdout]     |                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/naive_hash_index/naive_hash_table/hash_join_chain.rs:293:19
[INFO] [stdout]     |
[INFO] [stdout] 293 |     fn first_page(&self) -> FrameReadGuard {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 293 |     fn first_page(&self) -> FrameReadGuard<'_> {
[INFO] [stdout]     |                                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/naive_hash_index/naive_hash_table/hash_join_chain.rs:308:25
[INFO] [stdout]     |
[INFO] [stdout] 308 |     fn first_page_write(&self) -> FrameWriteGuard {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 308 |     fn first_page_write(&self) -> FrameWriteGuard<'_> {
[INFO] [stdout]     |                                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/naive_hash_index/naive_hash_table/hash_join_page.rs:341:31
[INFO] [stdout]     |
[INFO] [stdout] 341 |     fn record_ref_from_slotid(&self, slot_id: usize) -> RecordRef {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 341 |     fn record_ref_from_slotid(&self, slot_id: usize) -> RecordRef<'_> {
[INFO] [stdout]     |                                                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/naive_hash_index/naive_hash_table/hash_join_page.rs:346:29
[INFO] [stdout]     |
[INFO] [stdout] 346 |     fn record_ref_from_slot(&self, slot: &Slot) -> RecordRef {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 346 |     fn record_ref_from_slot(&self, slot: &Slot) -> RecordRef<'_> {
[INFO] [stdout]     |                                                             ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/naive_hash_index/naive_hash_table/hash_join_page.rs:374:26
[INFO] [stdout]     |
[INFO] [stdout] 374 |     fn slot_pkey_matches(&self, slot: &Slot, pkey: &[u8]) -> Option<RecordRef>;
[INFO] [stdout]     |                          ^^^^^ the lifetime is elided here          ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 374 |     fn slot_pkey_matches(&self, slot: &Slot, pkey: &[u8]) -> Option<RecordRef<'_>>;
[INFO] [stdout]     |                                                                              ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/naive_hash_index/naive_hash_table/hash_join_page.rs:541:26
[INFO] [stdout]     |
[INFO] [stdout] 541 |     fn slot_pkey_matches(&self, slot: &Slot, pkey: &[u8]) -> Option<RecordRef> {
[INFO] [stdout]     |                          ^^^^^ the lifetime is elided here          ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 541 |     fn slot_pkey_matches(&self, slot: &Slot, pkey: &[u8]) -> Option<RecordRef<'_>> {
[INFO] [stdout]     |                                                                              ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `access_method::UniqueKeyIndex`
[INFO] [stdout]  --> src/bin/aps_scan_latency.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 |     access_method::UniqueKeyIndex,
[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: `show_table_stats`
[INFO] [stdout]  --> src/bin/tpcc.rs:7:52
[INFO] [stdout]   |
[INFO] [stdout] 7 |         load_all_tables, run_benchmark_for_thread, show_table_stats, DeliveryTxn, NewOrderTxn,
[INFO] [stdout]   |                                                    ^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `from_key_bytes` is never used
[INFO] [stdout]   --> src/bin/aps_scan_latency.rs:41:4
[INFO] [stdout]    |
[INFO] [stdout] 41 | fn from_key_bytes(key: &[u8]) -> usize {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_key` is never used
[INFO] [stdout]   --> src/bin/aps_scan_latency.rs:51:4
[INFO] [stdout]    |
[INFO] [stdout] 51 | fn get_key(num_keys: usize, skew_factor: f64) -> usize {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_new_value` is never used
[INFO] [stdout]   --> src/bin/aps_scan_latency.rs:62:4
[INFO] [stdout]    |
[INFO] [stdout] 62 | fn get_new_value(value_size: usize) -> Vec<u8> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `MvccEntry`
[INFO] [stdout]   --> benches/hash_join/bench_join_simulation_repair/join_simulation_repair.rs:22:62
[INFO] [stdout]    |
[INFO] [stdout] 22 | use fbtree::mvcc_index::{BoxMvccIndexMemPool, HashTableType, MvccEntry, MvccIndex};
[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: `rand::seq::SliceRandom`
[INFO] [stdout]   --> benches/hash_join/bench_join_simulation_repair/join_simulation_repair.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 | use rand::seq::SliceRandom;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]   --> benches/hash_join/bench_join_simulation_repair/join_simulation_repair.rs:27:24
[INFO] [stdout]    |
[INFO] [stdout] 27 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]    |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]   --> benches/hash_join/bench_join_simulation_repair/join_simulation_repair.rs:30:15
[INFO] [stdout]    |
[INFO] [stdout] 30 | use std::fs::{self, File};
[INFO] [stdout]    |               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BufRead` and `BufReader`
[INFO] [stdout]   --> benches/hash_join/bench_join_simulation_repair/join_simulation_repair.rs:31:21
[INFO] [stdout]    |
[INFO] [stdout] 31 | use std::io::{self, BufRead, BufReader};
[INFO] [stdout]    |                     ^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]   --> benches/hash_join/bench_join_simulation_repair/join_simulation_repair.rs:33:5
[INFO] [stdout]    |
[INFO] [stdout] 33 | use std::sync::Arc;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rand::rngs::SmallRng`
[INFO] [stdout]   --> benches/hash_join/bench_join_simulation_repair/join_simulation_repair.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 36 | use rand::rngs::SmallRng;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Rng` and `SeedableRng`
[INFO] [stdout]   --> benches/hash_join/bench_join_simulation_repair/join_simulation_repair.rs:37:12
[INFO] [stdout]    |
[INFO] [stdout] 37 | use rand::{Rng, SeedableRng};
[INFO] [stdout]    |            ^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `from_key_bytes` is never used
[INFO] [stdout]   --> src/bin/fbt_scan_latency.rs:48:4
[INFO] [stdout]    |
[INFO] [stdout] 48 | fn from_key_bytes(key: &[u8]) -> usize {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_key` is never used
[INFO] [stdout]   --> src/bin/fbt_scan_latency.rs:58:4
[INFO] [stdout]    |
[INFO] [stdout] 58 | fn get_key(num_keys: usize, skew_factor: f64) -> usize {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_new_value` is never used
[INFO] [stdout]   --> src/bin/fbt_scan_latency.rs:69:4
[INFO] [stdout]    |
[INFO] [stdout] 69 | fn get_new_value(value_size: usize) -> Vec<u8> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TableRow` is never constructed
[INFO] [stdout]   --> benches/hash_join/bench_join_simulation_repair/join_simulation_repair.rs:49:8
[INFO] [stdout]    |
[INFO] [stdout] 49 | struct TableRow {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ExpectedRow` is never constructed
[INFO] [stdout]   --> benches/hash_join/bench_join_simulation_repair/join_simulation_repair.rs:66:8
[INFO] [stdout]    |
[INFO] [stdout] 66 | struct ExpectedRow {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ExpectedUpdateRow` is never constructed
[INFO] [stdout]   --> benches/hash_join/bench_join_simulation_repair/join_simulation_repair.rs:73:8
[INFO] [stdout]    |
[INFO] [stdout] 73 | struct ExpectedUpdateRow {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `decode_expected_value` is never used
[INFO] [stdout]    --> benches/hash_join/bench_join_simulation_repair/join_simulation_repair.rs:117:4
[INFO] [stdout]     |
[INFO] [stdout] 117 | fn decode_expected_value(value_str: &str) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `access_method::prelude`
[INFO] [stdout]  --> src/bin/ycsb.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 |     access_method::prelude::*,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `from_key_bytes` is never used
[INFO] [stdout]   --> src/bin/ycsb.rs:95:4
[INFO] [stdout]    |
[INFO] [stdout] 95 | fn from_key_bytes(key: &[u8]) -> usize {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_expected_update_csv` is never used
[INFO] [stdout]    --> benches/hash_join/join_simulation/join_simulation.rs:192:4
[INFO] [stdout]     |
[INFO] [stdout] 192 | fn read_expected_update_csv(file: &Path) -> io::Result<Vec<ExpectedUpdateRow>> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `max_timestamp` is never used
[INFO] [stdout]    --> benches/hash_join/join_simulation/join_simulation.rs:276:4
[INFO] [stdout]     |
[INFO] [stdout] 276 | fn max_timestamp(rows: &[ExpectedUpdateRow]) -> u64 {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `mvcc_entry_to_expected_row` is never used
[INFO] [stdout]    --> benches/hash_join/join_simulation/join_simulation.rs:296:4
[INFO] [stdout]     |
[INFO] [stdout] 296 | fn mvcc_entry_to_expected_row(e: &MvccEntry) -> ExpectedUpdateRow {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_txs_and_apply_write_repair` is never used
[INFO] [stdout]    --> benches/hash_join/join_simulation/join_simulation.rs:423:4
[INFO] [stdout]     |
[INFO] [stdout] 423 | fn read_txs_and_apply_write_repair(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_txs_and_apply_read_repair` is never used
[INFO] [stdout]    --> benches/hash_join/join_simulation/join_simulation.rs:480:4
[INFO] [stdout]     |
[INFO] [stdout] 480 | fn read_txs_and_apply_read_repair(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AtomicPtr`, `AtomicUsize`, `HashMap`, `default`, and `iter::Scan`
[INFO] [stdout]  --> benches/hash_join/htap_simulation/txs.rs:2:19
[INFO] [stdout]   |
[INFO] [stdout] 2 |     collections::{HashMap, HashSet},
[INFO] [stdout]   |                   ^^^^^^^
[INFO] [stdout] 3 |     default,
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout] 4 |     iter::Scan,
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 5 |     sync::atomic::{AtomicPtr, AtomicUsize},
[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: `StdRng`
[INFO] [stdout]   --> benches/hash_join/htap_simulation/txs.rs:12:22
[INFO] [stdout]    |
[INFO] [stdout] 12 |     rngs::{SmallRng, StdRng},
[INFO] [stdout]    |                      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> benches/hash_join/htap_simulation/txs.rs:641:12
[INFO] [stdout]     |
[INFO] [stdout] 641 |         if ((*self.cli.analytical_ratio.as_ref().unwrap() - 0.0).abs() > 1e-6)
[INFO] [stdout]     |            ^                                                                 ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 641 -         if ((*self.cli.analytical_ratio.as_ref().unwrap() - 0.0).abs() > 1e-6)
[INFO] [stdout] 641 +         if (*self.cli.analytical_ratio.as_ref().unwrap() - 0.0).abs() > 1e-6 
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> benches/hash_join/htap_simulation/txs.rs:661:16
[INFO] [stdout]     |
[INFO] [stdout] 661 |             if ((*self.cli.analytical_ratio.as_ref().unwrap() - 0.0).abs() > 1e-6)
[INFO] [stdout]     |                ^                                                                 ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 661 -             if ((*self.cli.analytical_ratio.as_ref().unwrap() - 0.0).abs() > 1e-6)
[INFO] [stdout] 661 +             if (*self.cli.analytical_ratio.as_ref().unwrap() - 0.0).abs() > 1e-6 
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `core::num`
[INFO] [stdout]  --> benches/hash_join/htap_simulation/bench.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use core::num;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TableType`
[INFO] [stdout]  --> benches/hash_join/htap_simulation/bench.rs:9:16
[INFO] [stdout]   |
[INFO] [stdout] 9 | use cli::{Cli, TableType};
[INFO] [stdout]   |                ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `dbgen::DataSource`
[INFO] [stdout]   --> benches/hash_join/htap_simulation/bench.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use dbgen::DataSource;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `prelude::Timestamp`
[INFO] [stdout]   --> benches/hash_join/htap_simulation/bench.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 |     prelude::Timestamp,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `offset` is never read
[INFO] [stdout]    --> benches/hash_join/htap_simulation/dbgen.rs:137:9
[INFO] [stdout]     |
[INFO] [stdout] 137 |         offset += 4;
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> benches/hash_join/htap_simulation/dbgen.rs:160:13
[INFO] [stdout]     |
[INFO] [stdout] 160 |         let mut rng = SmallRng::seed_from_u64(cli.seed);
[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: `i`
[INFO] [stdout]    --> benches/hash_join/htap_simulation/dbgen.rs:194:13
[INFO] [stdout]     |
[INFO] [stdout] 194 |         for i in 0..length {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `rand` is never read
[INFO] [stdout]    --> benches/hash_join/htap_simulation/dbgen.rs:188:24
[INFO] [stdout]     |
[INFO] [stdout] 188 |         let mut rand = 1_u8;
[INFO] [stdout]     |                        ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> benches/hash_join/htap_simulation/dbgen.rs:219:13
[INFO] [stdout]     |
[INFO] [stdout] 219 |         for i in 0..length {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `rand` is never read
[INFO] [stdout]    --> benches/hash_join/htap_simulation/dbgen.rs:213:24
[INFO] [stdout]     |
[INFO] [stdout] 213 |         let mut rand = 1_u8;
[INFO] [stdout]     |                        ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> benches/hash_join/htap_simulation/dbgen.rs:243:13
[INFO] [stdout]     |
[INFO] [stdout] 243 |         for i in 0..length {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ts`
[INFO] [stdout]   --> benches/hash_join/htap_simulation/interface.rs:89:23
[INFO] [stdout]    |
[INFO] [stdout] 89 |     fn mark_ts(&self, ts: u64) {}
[INFO] [stdout]    |                       ^^ help: if this is intentional, prefix it with an underscore: `_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_read_repair`
[INFO] [stdout]    --> benches/hash_join/htap_simulation/interface.rs:100:9
[INFO] [stdout]     |
[INFO] [stdout] 100 |         is_read_repair: bool,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_read_repair`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ts`
[INFO] [stdout]    --> benches/hash_join/htap_simulation/interface.rs:172:23
[INFO] [stdout]     |
[INFO] [stdout] 172 |     fn mark_ts(&self, ts: u64) {}
[INFO] [stdout]     |                       ^^ help: if this is intentional, prefix it with an underscore: `_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ts`
[INFO] [stdout]    --> benches/hash_join/htap_simulation/interface.rs:173:29
[INFO] [stdout]     |
[INFO] [stdout] 173 |     fn after_mark_ts(&self, ts: u64) {
[INFO] [stdout]     |                             ^^ help: if this is intentional, prefix it with an underscore: `_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ts`
[INFO] [stdout]    --> benches/hash_join/htap_simulation/interface.rs:266:29
[INFO] [stdout]     |
[INFO] [stdout] 266 |     fn after_mark_ts(&self, ts: u64) {
[INFO] [stdout]     |                             ^^ help: if this is intentional, prefix it with an underscore: `_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ts`
[INFO] [stdout]    --> benches/hash_join/htap_simulation/interface.rs:321:29
[INFO] [stdout]     |
[INFO] [stdout] 321 |     fn after_mark_ts(&self, ts: Timestamp) {
[INFO] [stdout]     |                             ^^ help: if this is intentional, prefix it with an underscore: `_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ts`
[INFO] [stdout]    --> benches/hash_join/htap_simulation/interface.rs:337:61
[INFO] [stdout]     |
[INFO] [stdout] 337 |     fn update(&self, key: &[u8], pkey: &[u8], value: &[u8], ts: Timestamp) {
[INFO] [stdout]     |                                                             ^^ help: if this is intentional, prefix it with an underscore: `_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_read_repair`
[INFO] [stdout]    --> benches/hash_join/htap_simulation/interface.rs:349:9
[INFO] [stdout]     |
[INFO] [stdout] 349 |         is_read_repair: bool,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_read_repair`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `optype`
[INFO] [stdout]    --> benches/hash_join/htap_simulation/interface.rs:353:25
[INFO] [stdout]     |
[INFO] [stdout] 353 |     fn begin_txs(&self, optype: OperationType) -> Result<(), AccessMethodError> {
[INFO] [stdout]     |                         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_optype`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `optype`
[INFO] [stdout]    --> benches/hash_join/htap_simulation/interface.rs:356:23
[INFO] [stdout]     |
[INFO] [stdout] 356 |     fn end_txs(&self, optype: OperationType) -> Result<(), AccessMethodError> {
[INFO] [stdout]     |                       ^^^^^^ help: if this is intentional, prefix it with an underscore: `_optype`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_read_repair`
[INFO] [stdout]    --> benches/hash_join/htap_simulation/interface.rs:362:9
[INFO] [stdout]     |
[INFO] [stdout] 362 |         is_read_repair: bool,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_read_repair`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ts`
[INFO] [stdout]    --> benches/hash_join/htap_simulation/interface.rs:367:74
[INFO] [stdout]     |
[INFO] [stdout] 367 |     fn update_write_repair(&self, key: &[u8], pkey: &[u8], value: &[u8], ts: Timestamp) {
[INFO] [stdout]     |                                                                          ^^ help: if this is intentional, prefix it with an underscore: `_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ts`
[INFO] [stdout]    --> benches/hash_join/htap_simulation/interface.rs:370:31
[INFO] [stdout]     |
[INFO] [stdout] 370 |     fn garbage_collect(&self, ts: Timestamp) {}
[INFO] [stdout]     |                               ^^ help: if this is intentional, prefix it with an underscore: `_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> benches/hash_join/htap_simulation/txs.rs:180:16
[INFO] [stdout]     |
[INFO] [stdout] 180 |     pub fn new(mut cli: Cli) -> Self {
[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]    --> benches/hash_join/htap_simulation/txs.rs:352:13
[INFO] [stdout]     |
[INFO] [stdout] 352 |         let mut selected_ts = all_ts.choose_multiple(&mut self.rng, 2);
[INFO] [stdout]     |             ----^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `selected_ts`
[INFO] [stdout]    --> benches/hash_join/htap_simulation/txs.rs:352:13
[INFO] [stdout]     |
[INFO] [stdout] 352 |         let mut selected_ts = all_ts.choose_multiple(&mut self.rng, 2);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_selected_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `RepairType` is never used
[INFO] [stdout]   --> benches/hash_join/htap_simulation/bench.rs:25:6
[INFO] [stdout]    |
[INFO] [stdout] 25 | enum RepairType {
[INFO] [stdout]    |      ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `ops` is never read
[INFO] [stdout]    --> benches/hash_join/htap_simulation/dbgen.rs:155:5
[INFO] [stdout]     |
[INFO] [stdout] 150 | pub struct DataSource {
[INFO] [stdout]     |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 155 |     ops: Vec<TransactionalOp>,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Scan` is never constructed
[INFO] [stdout]   --> benches/hash_join/htap_simulation/interface.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub enum OperationType {
[INFO] [stdout]    |          ------------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 21 |     Scan,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `OperationType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get` is never used
[INFO] [stdout]   --> benches/hash_join/htap_simulation/interface.rs:31:8
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub trait MultiVersionJoinTable {
[INFO] [stdout]    |           --------------------- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 31 |     fn get(&self, key: &[u8], pkey: &[u8], ts: Timestamp) -> Option<Vec<u8>>;
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PKEY_PER_JOIN_KEY` is never used
[INFO] [stdout]   --> benches/hash_join/htap_simulation/txs.rs:24:7
[INFO] [stdout]    |
[INFO] [stdout] 24 | const PKEY_PER_JOIN_KEY: usize = 500;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `JOIN_KEY_PER_BUCKET` is never used
[INFO] [stdout]   --> benches/hash_join/htap_simulation/txs.rs:25:7
[INFO] [stdout]    |
[INFO] [stdout] 25 | const JOIN_KEY_PER_BUCKET: usize = 20;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `tx_id`, `op`, and `gc_ts` are never read
[INFO] [stdout]   --> benches/hash_join/htap_simulation/txs.rs:29:9
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub struct TxOperation {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] 29 |     pub tx_id: TxId,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 30 |     pub tx_ts: Timestamp,
[INFO] [stdout] 31 |     pub op: OperationType,
[INFO] [stdout]    |         ^^
[INFO] [stdout] ...
[INFO] [stdout] 36 |     pub gc_ts: Vec<Timestamp>,                 // ts that we want to gc
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TxOperation` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `clear_cpu_cache` is never used
[INFO] [stdout]   --> benches/hash_join/htap_simulation/txs.rs:40:4
[INFO] [stdout]    |
[INFO] [stdout] 40 | fn clear_cpu_cache() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `add_op` is never used
[INFO] [stdout]    --> benches/hash_join/htap_simulation/txs.rs:159:12
[INFO] [stdout]     |
[INFO] [stdout] 145 | impl Tx {
[INFO] [stdout]     | ------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 159 |     pub fn add_op(&mut self, op: TxOperation) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `gen_new_ts`, `gen_txs`, and `choose_transaction` are never used
[INFO] [stdout]    --> benches/hash_join/htap_simulation/txs.rs:206:12
[INFO] [stdout]     |
[INFO] [stdout] 179 | impl TxBench {
[INFO] [stdout]     | ------------ associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 206 |     pub fn gen_new_ts(&mut self) -> Timestamp {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 419 |     pub fn gen_txs(&mut self) {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 427 |     fn choose_transaction(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `cId` should have a snake case name
[INFO] [stdout]   --> benches/hash_join/htap_simulation/dbgen.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     cId: i32,
[INFO] [stdout]    |     ^^^ help: convert the identifier to snake case: `c_id`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `dId` should have a snake case name
[INFO] [stdout]   --> benches/hash_join/htap_simulation/dbgen.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 |     dId: i32,
[INFO] [stdout]    |     ^^^ help: convert the identifier to snake case: `d_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `wId` should have a snake case name
[INFO] [stdout]   --> benches/hash_join/htap_simulation/dbgen.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 |     wId: i32,
[INFO] [stdout]    |     ^^^ help: convert the identifier to snake case: `w_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `C_FIRST` should have a snake case name
[INFO] [stdout]   --> benches/hash_join/htap_simulation/dbgen.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 |     C_FIRST: [u8; 16],
[INFO] [stdout]    |     ^^^^^^^ help: convert the identifier to snake case: `c_first`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `C_MIDDLE` should have a snake case name
[INFO] [stdout]   --> benches/hash_join/htap_simulation/dbgen.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 |     C_MIDDLE: [u8; 2],
[INFO] [stdout]    |     ^^^^^^^^ help: convert the identifier to snake case: `c_middle`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `C_LAST` should have a snake case name
[INFO] [stdout]   --> benches/hash_join/htap_simulation/dbgen.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 |     C_LAST: [u8; 16],
[INFO] [stdout]    |     ^^^^^^ help: convert the identifier to snake case: `c_last`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `C_STREET_1` should have a snake case name
[INFO] [stdout]   --> benches/hash_join/htap_simulation/dbgen.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 23 |     C_STREET_1: [u8; 20],
[INFO] [stdout]    |     ^^^^^^^^^^ help: convert the identifier to snake case: `c_street_1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `C_STREET_2` should have a snake case name
[INFO] [stdout]   --> benches/hash_join/htap_simulation/dbgen.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 24 |     C_STREET_2: [u8; 20],
[INFO] [stdout]    |     ^^^^^^^^^^ help: convert the identifier to snake case: `c_street_2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `C_CITY` should have a snake case name
[INFO] [stdout]   --> benches/hash_join/htap_simulation/dbgen.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     C_CITY: [u8; 20],
[INFO] [stdout]    |     ^^^^^^ help: convert the identifier to snake case: `c_city`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `C_STATE` should have a snake case name
[INFO] [stdout]   --> benches/hash_join/htap_simulation/dbgen.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 26 |     C_STATE: [u8; 2],
[INFO] [stdout]    |     ^^^^^^^ help: convert the identifier to snake case: `c_state`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `C_ZIP` should have a snake case name
[INFO] [stdout]   --> benches/hash_join/htap_simulation/dbgen.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 27 |     C_ZIP: [u8; 9],
[INFO] [stdout]    |     ^^^^^ help: convert the identifier to snake case: `c_zip`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `C_PHONE` should have a snake case name
[INFO] [stdout]   --> benches/hash_join/htap_simulation/dbgen.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 28 |     C_PHONE: [u8; 16],
[INFO] [stdout]    |     ^^^^^^^ help: convert the identifier to snake case: `c_phone`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `C_SINCE` should have a snake case name
[INFO] [stdout]   --> benches/hash_join/htap_simulation/dbgen.rs:29:5
[INFO] [stdout]    |
[INFO] [stdout] 29 |     C_SINCE: u64, // convert to u64 further processing
[INFO] [stdout]    |     ^^^^^^^ help: convert the identifier to snake case: `c_since`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `C_CREDIT` should have a snake case name
[INFO] [stdout]   --> benches/hash_join/htap_simulation/dbgen.rs:30:5
[INFO] [stdout]    |
[INFO] [stdout] 30 |     C_CREDIT: [u8; 2],
[INFO] [stdout]    |     ^^^^^^^^ help: convert the identifier to snake case: `c_credit`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `C_CREDIT_LIM` should have a snake case name
[INFO] [stdout]   --> benches/hash_join/htap_simulation/dbgen.rs:31:5
[INFO] [stdout]    |
[INFO] [stdout] 31 |     C_CREDIT_LIM: f64,
[INFO] [stdout]    |     ^^^^^^^^^^^^ help: convert the identifier to snake case: `c_credit_lim`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `C_DISCOUNT` should have a snake case name
[INFO] [stdout]   --> benches/hash_join/htap_simulation/dbgen.rs:32:5
[INFO] [stdout]    |
[INFO] [stdout] 32 |     C_DISCOUNT: f64,
[INFO] [stdout]    |     ^^^^^^^^^^ help: convert the identifier to snake case: `c_discount`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `C_BALANCE` should have a snake case name
[INFO] [stdout]   --> benches/hash_join/htap_simulation/dbgen.rs:33:5
[INFO] [stdout]    |
[INFO] [stdout] 33 |     C_BALANCE: f64,
[INFO] [stdout]    |     ^^^^^^^^^ help: convert the identifier to snake case: `c_balance`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `C_YTD_PAYMENT` should have a snake case name
[INFO] [stdout]   --> benches/hash_join/htap_simulation/dbgen.rs:34:5
[INFO] [stdout]    |
[INFO] [stdout] 34 |     C_YTD_PAYMENT: f64,
[INFO] [stdout]    |     ^^^^^^^^^^^^^ help: convert the identifier to snake case: `c_ytd_payment`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `C_PAYMENT_CNT` should have a snake case name
[INFO] [stdout]   --> benches/hash_join/htap_simulation/dbgen.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 35 |     C_PAYMENT_CNT: i32,
[INFO] [stdout]    |     ^^^^^^^^^^^^^ help: convert the identifier to snake case: `c_payment_cnt`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `C_DELIVERY_CNT` should have a snake case name
[INFO] [stdout]   --> benches/hash_join/htap_simulation/dbgen.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 36 |     C_DELIVERY_CNT: i32,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `c_delivery_cnt`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `C_DATA` should have a snake case name
[INFO] [stdout]   --> benches/hash_join/htap_simulation/dbgen.rs:37:5
[INFO] [stdout]    |
[INFO] [stdout] 37 |     C_DATA: [u8; 500],
[INFO] [stdout]    |     ^^^^^^ help: convert the identifier to snake case: `c_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `C_N_NATIONKEY` should have a snake case name
[INFO] [stdout]   --> benches/hash_join/htap_simulation/dbgen.rs:38:5
[INFO] [stdout]    |
[INFO] [stdout] 38 |     C_N_NATIONKEY: i32,
[INFO] [stdout]    |     ^^^^^^^^^^^^^ help: convert the identifier to snake case: `c_n_nationkey`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `A` should have a snake case name
[INFO] [stdout]    --> benches/hash_join/htap_simulation/dbgen.rs:278:42
[INFO] [stdout]     |
[INFO] [stdout] 278 |     fn random_non_uniform_int(&mut self, A: i32, x: i32, y: i32, C: i32) -> i32 {
[INFO] [stdout]     |                                          ^ help: convert the identifier to snake case: `a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `C` should have a snake case name
[INFO] [stdout]    --> benches/hash_join/htap_simulation/dbgen.rs:278:66
[INFO] [stdout]     |
[INFO] [stdout] 278 |     fn random_non_uniform_int(&mut self, A: i32, x: i32, y: i32, C: i32) -> i32 {
[INFO] [stdout]     |                                                                  ^ help: convert the identifier to snake case (notice the capitalization): `c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `wId` should have a snake case name
[INFO] [stdout]    --> benches/hash_join/htap_simulation/dbgen.rs:378:13
[INFO] [stdout]     |
[INFO] [stdout] 378 |         for wId in 1..=self.cli.warehouse_count as i32 {
[INFO] [stdout]     |             ^^^ help: convert the identifier to snake case: `w_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `dId` should have a snake case name
[INFO] [stdout]    --> benches/hash_join/htap_simulation/dbgen.rs:379:17
[INFO] [stdout]     |
[INFO] [stdout] 379 |             for dId in 1..=10 {
[INFO] [stdout]     |                 ^^^ help: convert the identifier to snake case: `d_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `cId` should have a snake case name
[INFO] [stdout]    --> benches/hash_join/htap_simulation/dbgen.rs:380:21
[INFO] [stdout]     |
[INFO] [stdout] 380 |                 for cId in 1..=3000 {
[INFO] [stdout]     |                     ^^^ help: convert the identifier to snake case: `c_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `hAmount` should have a snake case name
[INFO] [stdout]    --> benches/hash_join/htap_simulation/dbgen.rs:396:13
[INFO] [stdout]     |
[INFO] [stdout] 396 |         let hAmount = self.gen_double(1.0, 5000.0, 2);
[INFO] [stdout]     |             ^^^^^^^ help: convert the identifier to snake case: `h_amount`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `cId` should have a snake case name
[INFO] [stdout]    --> benches/hash_join/htap_simulation/dbgen.rs:400:13
[INFO] [stdout]     |
[INFO] [stdout] 400 |         let cId = self.random_non_uniform_int(1023, 1, 3000, 867);
[INFO] [stdout]     |             ^^^ help: convert the identifier to snake case: `c_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `dId` should have a snake case name
[INFO] [stdout]    --> benches/hash_join/htap_simulation/dbgen.rs:401:13
[INFO] [stdout]     |
[INFO] [stdout] 401 |         let dId = rand::distributions::uniform::UniformInt::<i32>::new_inclusive(1, 10)
[INFO] [stdout]     |             ^^^ help: convert the identifier to snake case: `d_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `wId` should have a snake case name
[INFO] [stdout]    --> benches/hash_join/htap_simulation/dbgen.rs:403:13
[INFO] [stdout]     |
[INFO] [stdout] 403 |         let wId = rand::distributions::uniform::UniformInt::<i32>::new_inclusive(
[INFO] [stdout]     |             ^^^ help: convert the identifier to snake case: `w_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `cDid` should have a snake case name
[INFO] [stdout]    --> benches/hash_join/htap_simulation/dbgen.rs:409:14
[INFO] [stdout]     |
[INFO] [stdout] 409 |         let (cDid, cWid) = if x <= 85 {
[INFO] [stdout]     |              ^^^^ help: convert the identifier to snake case: `c_did`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `cWid` should have a snake case name
[INFO] [stdout]    --> benches/hash_join/htap_simulation/dbgen.rs:409:20
[INFO] [stdout]     |
[INFO] [stdout] 409 |         let (cDid, cWid) = if x <= 85 {
[INFO] [stdout]     |                    ^^^^ help: convert the identifier to snake case: `c_wid`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 34.29s
[INFO] running `Command { std: "docker" "inspect" "df8b12bf901335ef875fa4dbf8ea066792369ecf190ef7a76fdf6724543d6b3a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "df8b12bf901335ef875fa4dbf8ea066792369ecf190ef7a76fdf6724543d6b3a", kill_on_drop: false }`
[INFO] [stdout] df8b12bf901335ef875fa4dbf8ea066792369ecf190ef7a76fdf6724543d6b3a
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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] 9028bb899eb2805fbf8d0633eb2941f5f40fb48faf126b7a8127f23ebc26c354
[INFO] running `Command { std: "docker" "start" "-a" "9028bb899eb2805fbf8d0633eb2941f5f40fb48faf126b7a8127f23ebc26c354", kill_on_drop: false }`
[INFO] [stderr]    Compiling serde v1.0.215
[INFO] [stderr]    Compiling semver v1.0.23
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling slab v0.4.9
[INFO] [stderr]    Compiling futures-sink v0.3.31
[INFO] [stderr]    Compiling memchr v2.7.4
[INFO] [stderr]    Compiling hashbrown v0.15.1
[INFO] [stderr]    Compiling equivalent v1.0.1
[INFO] [stderr]    Compiling futures-core v0.3.31
[INFO] [stderr]    Compiling syn v2.0.89
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.18
[INFO] [stderr]    Compiling toml_datetime v0.6.8
[INFO] [stderr]    Compiling pin-project-lite v0.2.15
[INFO] [stderr]    Compiling either v1.13.0
[INFO] [stderr]    Compiling winnow v0.6.20
[INFO] [stderr]    Compiling pin-utils v0.1.0
[INFO] [stderr]    Compiling futures-io v0.3.31
[INFO] [stderr]    Compiling serde_json v1.0.133
[INFO] [stderr]    Compiling futures-channel v0.3.31
[INFO] [stderr]    Compiling futures-task v0.3.31
[INFO] [stderr]    Compiling rayon-core v1.12.1
[INFO] [stderr]    Compiling half v2.4.1
[INFO] [stderr]    Compiling plotters-backend v0.3.7
[INFO] [stderr]    Compiling ciborium-io v0.2.2
[INFO] [stderr]    Compiling itertools v0.10.5
[INFO] [stderr]    Compiling cast v0.3.0
[INFO] [stderr]    Compiling glob v0.3.1
[INFO] [stderr]    Compiling relative-path v1.9.3
[INFO] [stderr]    Compiling same-file v1.0.6
[INFO] [stderr]    Compiling is-terminal v0.4.13
[INFO] [stderr]    Compiling anes v0.1.6
[INFO] [stderr]    Compiling walkdir v2.5.0
[INFO] [stderr]    Compiling half v1.8.3
[INFO] [stderr]    Compiling rustc_version v0.4.1
[INFO] [stderr]    Compiling indexmap v2.6.0
[INFO] [stderr]    Compiling crossbeam-deque v0.8.5
[INFO] [stderr]    Compiling ciborium-ll v0.2.2
[INFO] [stderr]    Compiling plotters-svg v0.3.7
[INFO] [stderr]    Compiling aho-corasick v1.1.3
[INFO] [stderr]    Compiling futures-timer v3.0.3
[INFO] [stderr]    Compiling oorandom v11.1.4
[INFO] [stderr]    Compiling rstest_macros v0.23.0
[INFO] [stderr]    Compiling rayon v1.10.0
[INFO] [stderr]    Compiling criterion-plot v0.5.0
[INFO] [stderr]    Compiling chrono v0.4.38
[INFO] [stderr]    Compiling plotters v0.3.7
[INFO] [stderr]    Compiling regex-automata v0.4.9
[INFO] [stderr]    Compiling toml_edit v0.22.22
[INFO] [stderr]    Compiling regex v1.11.1
[INFO] [stderr]    Compiling zerocopy-derive v0.7.35
[INFO] [stderr]    Compiling serde_derive v1.0.215
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling clap_derive v4.5.18
[INFO] [stderr]    Compiling proc-macro-crate v3.2.0
[INFO] [stderr]    Compiling futures-util v0.3.31
[INFO] [stderr]    Compiling zerocopy v0.7.35
[INFO] [stderr]    Compiling clap v4.5.21
[INFO] [stderr]    Compiling ppv-lite86 v0.2.20
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling fastbloom v0.7.1
[INFO] [stderr]    Compiling zipf v7.0.1
[INFO] [stderr]    Compiling rand_distr v0.4.3
[INFO] [stderr]    Compiling futures-executor v0.3.31
[INFO] [stderr]    Compiling futures v0.3.31
[INFO] [stderr]    Compiling rstest v0.23.0
[INFO] [stderr]    Compiling ciborium v0.2.2
[INFO] [stderr]    Compiling csv v1.3.1
[INFO] [stderr]    Compiling serde_cbor v0.11.2
[INFO] [stderr]    Compiling fbtree v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling tinytemplate v1.2.1
[INFO] [stdout] warning: unused import: `AtomicUsize`
[INFO] [stdout]  --> src/access_method/fbt/foster_btree.rs:7:18
[INFO] [stdout]   |
[INFO] [stdout] 7 |         atomic::{AtomicUsize, Ordering},
[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: `AtomicU64`, `Duration`, `Instant`, and `Ordering`
[INFO] [stdout]  --> src/mvcc_index/dual_heap_hash/chained_hash_bucket_second.rs:4:18
[INFO] [stdout]   |
[INFO] [stdout] 4 |         atomic::{AtomicU64, Ordering},
[INFO] [stdout]   |                  ^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 7 |     time::{Duration, Instant},
[INFO] [stdout]   |            ^^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `FrameReadGuard`, `MemPoolStatus`, `PageFrameKey`, `TxId`, `fix_frame_id2`, `log_debug`, `log_info`, `log_warn`, and `write_page`
[INFO] [stdout]   --> src/mvcc_index/dual_heap_hash/chained_hash_bucket_second.rs:11:24
[INFO] [stdout]    |
[INFO] [stdout] 11 |     bp::{ContainerKey, FrameReadGuard, MemPool, MemPoolStatus, PageFrameKey},
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^           ^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 12 |     log_debug, log_info, log_warn,
[INFO] [stdout]    |     ^^^^^^^^^  ^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 13 |     mvcc_index::{
[INFO] [stdout] 14 |         hash_common::{fix_frame_id2, write_page, KVWithTs, RowDelta, StatCollector},
[INFO] [stdout]    |                       ^^^^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 17 |         Delta, MvccEntry, TxId,
[INFO] [stdout]    |                           ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `FrameReadGuard`, `MemPoolStatus`, `PageFrameKey`, `Page`, and `log_warn`
[INFO] [stdout]  --> src/mvcc_index/dual_heap_hash/chained_hash_table.rs:2:24
[INFO] [stdout]   |
[INFO] [stdout] 2 |     bp::{ContainerKey, FrameReadGuard, MemPool, MemPoolStatus, PageFrameKey},
[INFO] [stdout]   |                        ^^^^^^^^^^^^^^           ^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 3 |     log_warn,
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 9 |     page::{Page, PageId},
[INFO] [stdout]   |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `core::fmt`
[INFO] [stdout]   --> src/mvcc_index/dual_heap_hash/chained_hash_table.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use core::fmt;
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BTreeMap`, `HashMap`, `Mutex`, `fmt::format`, and `result`
[INFO] [stdout]   --> src/mvcc_index/dual_heap_hash/chained_hash_table.rs:14:44
[INFO] [stdout]    |
[INFO] [stdout] 14 |     collections::{hash_map::DefaultHasher, BTreeMap, HashMap},
[INFO] [stdout]    |                                            ^^^^^^^^  ^^^^^^^
[INFO] [stdout] 15 |     fmt::format,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 16 |     hash::{Hash, Hasher},
[INFO] [stdout] 17 |     result,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 20 |         Arc, Mutex,
[INFO] [stdout]    |              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TxInfo`
[INFO] [stdout]   --> src/mvcc_index/dual_heap_hash/chained_hash_table.rs:24:75
[INFO] [stdout]    |
[INFO] [stdout] 24 | use super::{chained_hash_bucket_second::DualChainBucket, Timestamp, TxId, TxInfo};
[INFO] [stdout]    |                                                                           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stdout]  --> src/mvcc_index/dual_heap_hash/mod.rs:5:13
[INFO] [stdout]   |
[INFO] [stdout] 5 | use serde::{Deserialize, Serialize};
[INFO] [stdout]   |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `core::fmt`
[INFO] [stdout]  --> src/mvcc_index/hash_common.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use core::fmt;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Hash`, `Hasher`, and `SipHasher`
[INFO] [stdout]  --> src/mvcc_index/hash_common.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 |     hash::{Hash, Hasher, SipHasher},
[INFO] [stdout]   |            ^^^^  ^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `log_warn`
[INFO] [stdout]   --> src/mvcc_index/hash_common.rs:15:16
[INFO] [stdout]    |
[INFO] [stdout] 15 |     log_debug, log_warn,
[INFO] [stdout]    |                ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `FrameReadGuard`, `MemPoolStatus`, `PageFrameKey`, `Page`, and `log_warn`
[INFO] [stdout]   --> src/mvcc_index/hash_heap/hash_heap_table.rs:2:24
[INFO] [stdout]    |
[INFO] [stdout]  2 |     bp::{ContainerKey, FrameReadGuard, MemPool, MemPoolStatus, PageFrameKey},
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^           ^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout]  3 |     log_warn,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 12 |     page::{Page, PageId},
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashSet`, `error::Error`, `fmt::Debug`, and `time::Duration`
[INFO] [stdout]   --> src/mvcc_index/hash_heap/hash_heap_table.rs:16:63
[INFO] [stdout]    |
[INFO] [stdout] 16 |     collections::{hash_map::DefaultHasher, BTreeMap, HashMap, HashSet},
[INFO] [stdout]    |                                                               ^^^^^^^
[INFO] [stdout] 17 |     error::Error,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 18 |     fmt::Debug,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     time::Duration,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `TxId` and `log_warn`
[INFO] [stdout]  --> src/mvcc_index/hash_join_page.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 |     log_warn,
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 4 |     mvcc_index::{hash_common::StatCollector, MvccEntry, TxId},
[INFO] [stdout]   |                                                         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `core::slice`
[INFO] [stdout]  --> src/mvcc_index/hash_join_page.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use core::slice;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AtomicPtr`, `Instant`, and `Ordering`
[INFO] [stdout]   --> src/mvcc_index/hash_join_page.rs:13:18
[INFO] [stdout]    |
[INFO] [stdout] 13 |         atomic::{AtomicPtr, AtomicU64, Ordering},
[INFO] [stdout]    |                  ^^^^^^^^^             ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 16 |     time::{self, Instant},
[INFO] [stdout]    |                  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `chrono::Duration`
[INFO] [stdout]    --> src/mvcc_index/hash_join_page.rs:208:5
[INFO] [stdout]     |
[INFO] [stdout] 208 | use chrono::Duration;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `KVWithTs`
[INFO] [stdout]    --> src/mvcc_index/hash_join_page.rs:489:19
[INFO] [stdout]     |
[INFO] [stdout] 489 |     hash_common::{KVWithTs, MvccEntryLoc, RowDelta},
[INFO] [stdout]     |                   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AtomicU64`, `self`, and `thread::current`
[INFO] [stdout]  --> src/mvcc_index/hash_join_heap_chain.rs:4:18
[INFO] [stdout]   |
[INFO] [stdout] 4 |         atomic::{self, AtomicU32, AtomicU64, Ordering},
[INFO] [stdout]   |                  ^^^^             ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 7 |     thread::current,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `PAGE_CNT` and `log_warn`
[INFO] [stdout]   --> src/mvcc_index/hash_join_heap_chain.rs:14:37
[INFO] [stdout]    |
[INFO] [stdout] 14 |     log_debug, log_info, log_trace, log_warn,
[INFO] [stdout]    |                                     ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 17 |         hash_join_page::{record::RecordRef, HashJoinPage, PAGE_CNT},
[INFO] [stdout]    |                                                           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/mvcc_index/rust_hash_map/rust_hash_map.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 |     sync::{Mutex, RwLock},
[INFO] [stdout]   |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `core::panic`
[INFO] [stdout]  --> src/mvcc_index/ts_partitioned/ts_partitioned_collection.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use core::panic;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Excluded`, `Unbounded`, and `time::Instant`
[INFO] [stdout]  --> src/mvcc_index/ts_partitioned/ts_partitioned_collection.rs:4:18
[INFO] [stdout]   |
[INFO] [stdout] 4 |     ops::Bound::{Excluded, Unbounded},
[INFO] [stdout]   |                  ^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 5 |     sync::Arc,
[INFO] [stdout] 6 |     time::Instant,
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `PageFrameKey`, `log_warn`, `page::Page`, and `write_page`
[INFO] [stdout]   --> src/mvcc_index/ts_partitioned/ts_partitioned_collection.rs:10:33
[INFO] [stdout]    |
[INFO] [stdout] 10 |     bp::{ContainerKey, MemPool, PageFrameKey},
[INFO] [stdout]    |                                 ^^^^^^^^^^^^
[INFO] [stdout] 11 |     log_warn,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 14 |             read_repair_btree, read_repair_vec, write_page, KVWithTs, MvccEntryLoc, RowDelta,
[INFO] [stdout]    |                                                 ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 21 |     page::Page,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `log_warn`
[INFO] [stdout]  --> src/mvcc_index/ts_partitioned/ts_partitioned_table.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 |     log_warn,
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `atomic::AtomicBool`
[INFO] [stdout]   --> src/mvcc_index/mod.rs:26:12
[INFO] [stdout]    |
[INFO] [stdout] 26 |     sync::{atomic::AtomicBool, Arc},
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `log_trace`
[INFO] [stdout]   --> src/tpcc/orderstatus_txn.rs:10:23
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::{log_info, log_trace, write_fields};
[INFO] [stdout]    |                       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `log_trace`
[INFO] [stdout]   --> src/tpcc/stocklevel_txn.rs:10:23
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::{log_info, log_trace, write_fields};
[INFO] [stdout]    |                       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::hash::DefaultHasher`
[INFO] [stdout]  --> src/tpcc/tx_utils.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::hash::DefaultHasher;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Hash`
[INFO] [stdout]  --> src/tpcc/tx_utils.rs:5:17
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::hash::{Hash, Hasher};
[INFO] [stdout]   |                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashSet`
[INFO] [stdout]  --> src/txn_storage/mvcc_hash_storage/mod.rs:3:28
[INFO] [stdout]   |
[INFO] [stdout] 3 |     collections::{HashMap, HashSet},
[INFO] [stdout]   |                            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ContainerId`, `DatabaseId`, and `dual_heap_hash::chained_hash_table::ChainedHashTable`
[INFO] [stdout]  --> src/txn_storage/mvcc_hash_storage/mod.rs:8:10
[INFO] [stdout]   |
[INFO] [stdout] 8 |     bp::{ContainerId, DatabaseId, MemPool},
[INFO] [stdout]   |          ^^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 9 |     mvcc_index::{dual_heap_hash::chained_hash_table::ChainedHashTable, MvccIndex, TxId, TxInfo},
[INFO] [stdout]   |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ContainerOptions`, `DBOptions`, `ScanOptions`, `TxnOptions`, `TxnStorageStatus`, and `TxnStorageTrait`
[INFO] [stdout]   --> src/txn_storage/mvcc_hash_storage/mod.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     ContainerOptions, DBOptions, ScanOptions, TxnOptions, TxnStorageStatus, TxnStorageTrait,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^  ^^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^  ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `log_info`
[INFO] [stdout]   --> src/file_manager.rs:14:17
[INFO] [stdout]    |
[INFO] [stdout] 14 |     use crate::{log_info, log_trace};
[INFO] [stdout]    |                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `MvccEntry`
[INFO] [stdout]  --> src/naive_hash_index/naive_hash_table/mod.rs:5:18
[INFO] [stdout]   |
[INFO] [stdout] 5 |     mvcc_index::{MvccEntry, TxId},
[INFO] [stdout]   |                  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AtomicU64`, `BTreeMap`, and `self`
[INFO] [stdout]  --> src/naive_hash_index/naive_hash_table/hash_join_chain.rs:2:19
[INFO] [stdout]   |
[INFO] [stdout] 2 |     collections::{BTreeMap, HashMap},
[INFO] [stdout]   |                   ^^^^^^^^
[INFO] [stdout] 3 |     sync::{
[INFO] [stdout] 4 |         atomic::{self, AtomicU32, AtomicU64, Ordering},
[INFO] [stdout]   |                  ^^^^             ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Record`, `fix_frame_id2`, `log_info`, `log_warn`, and `prelude::Timestamp`
[INFO] [stdout]   --> src/naive_hash_index/naive_hash_table/hash_join_chain.rs:13:16
[INFO] [stdout]    |
[INFO] [stdout] 13 |     log_debug, log_info, log_trace, log_warn,
[INFO] [stdout]    |                ^^^^^^^^             ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 16 |             fix_frame_id, fix_frame_id2, read_page, write_page, RowDelta, StatCollector,
[INFO] [stdout]    |                           ^^^^^^^^^^^^^
[INFO] [stdout] 17 |         },
[INFO] [stdout] 18 |         hash_join_page::record::{Record, RecordRef},
[INFO] [stdout]    |                                  ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 23 |     prelude::Timestamp,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `prelude::Timestamp`
[INFO] [stdout]  --> src/naive_hash_index/naive_hash_table/hash_join_page.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 8 |         prelude::Timestamp,
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `prelude::Timestamp`
[INFO] [stdout]    --> src/naive_hash_index/naive_hash_table/hash_join_page.rs:104:35
[INFO] [stdout]     |
[INFO] [stdout] 104 |     use crate::{mvcc_index::TxId, prelude::Timestamp};
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Record`
[INFO] [stdout]    --> src/naive_hash_index/naive_hash_table/hash_join_page.rs:218:34
[INFO] [stdout]     |
[INFO] [stdout] 218 |         hash_join_page::record::{Record, RecordRef},
[INFO] [stdout]     |                                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Delta`, `MvccEntry`, `Page`, `TxId`, `read_repair_btree`, and `read_repair_vec`
[INFO] [stdout]  --> src/naive_hash_index/naive_hash_table/hash_join_table.rs:4:23
[INFO] [stdout]   |
[INFO] [stdout] 4 |         hash_common::{read_repair_btree, read_repair_vec, StatCollector},
[INFO] [stdout]   |                       ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 5 |         hash_join_page::record::RecordRef,
[INFO] [stdout] 6 |         Delta, MvccEntry, MvccIndex, TxId,
[INFO] [stdout]   |         ^^^^^  ^^^^^^^^^             ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 9 |     page::{Page, PageId},
[INFO] [stdout]   |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AtomicBool`, `AtomicU64`, `BTreeMap`, `HashMap`, `HashSet`, and `Ordering`
[INFO] [stdout]   --> src/naive_hash_index/naive_hash_table/hash_join_table.rs:13:44
[INFO] [stdout]    |
[INFO] [stdout] 13 |     collections::{hash_map::DefaultHasher, BTreeMap, HashMap, HashSet},
[INFO] [stdout]    |                                            ^^^^^^^^  ^^^^^^^  ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 16 |         atomic::{AtomicBool, AtomicU32, AtomicU64, Ordering},
[INFO] [stdout]    |                  ^^^^^^^^^^             ^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated struct `std::hash::SipHasher`: use `std::hash::DefaultHasher` instead
[INFO] [stdout]  --> src/mvcc_index/hash_common.rs:4:26
[INFO] [stdout]   |
[INFO] [stdout] 4 |     hash::{Hash, Hasher, SipHasher},
[INFO] [stdout]   |                          ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling criterion v0.5.1
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]    --> src/access_method/chain/read_optimized_chain.rs:478:25
[INFO] [stdout]     |
[INFO] [stdout] 447 | /                         match upgraded_page.insert(key, value) {
[INFO] [stdout] 448 | |                             Ok(_) => {
[INFO] [stdout] 449 | |                                 return Ok(upgraded_page);
[INFO] [stdout] ...   |
[INFO] [stdout] 477 | |                         }
[INFO] [stdout]     | |_________________________- any code following this `match` expression is unreachable, as all arms diverge
[INFO] [stdout] 478 |                           return Ok(upgraded_page);
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SingleTsHashTable`
[INFO] [stdout]   --> src/naive_hash_index/naive_mvht.rs:15:61
[INFO] [stdout]    |
[INFO] [stdout] 15 |         naive_hash_table::{hash_join_table::NaiveHashTable, SingleTsHashTable},
[INFO] [stdout]    |                                                             ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SingleTsHashTable`
[INFO] [stdout]  --> src/naive_hash_index/naive_hash_table/hash_join_table.rs:8:74
[INFO] [stdout]   |
[INFO] [stdout] 8 |     naive_hash_index::naive_hash_table::{hash_join_chain::HeapHashChain, SingleTsHashTable},
[INFO] [stdout]   |                                                                          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `MvccIndex`
[INFO] [stdout]  --> src/naive_hash_index/naive_hash_table/hash_join_table.rs:6:27
[INFO] [stdout]   |
[INFO] [stdout] 6 |         Delta, MvccEntry, MvccIndex, TxId,
[INFO] [stdout]   |                           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `hash_join_page::HashJoinPage`
[INFO] [stdout]   --> src/mvcc_index/dual_heap_hash/chained_hash_bucket_second.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 16 |         hash_join_page::HashJoinPage,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `hash_join_page::HashJoinPage`
[INFO] [stdout]   --> src/mvcc_index/ts_partitioned/ts_partitioned_collection.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 18 |         hash_join_page::HashJoinPage,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Hasher`
[INFO] [stdout]  --> src/tpcc/tx_utils.rs:5:23
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::hash::{Hash, Hasher};
[INFO] [stdout]   |                       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `current_pos` is never read
[INFO] [stdout]    --> src/access_method/chain/short_key_mvcc_page.rs:196:13
[INFO] [stdout]     |
[INFO] [stdout] 196 |             current_pos += std::mem::size_of::<u64>();
[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: `key`
[INFO] [stdout]     --> src/access_method/chain/short_key_mvcc_page.rs:1155:34
[INFO] [stdout]      |
[INFO] [stdout] 1155 |     fn update_with_ts(&mut self, key: &[u8], val: &[u8], ts: u64) -> Result<(), AccessMethodError> {
[INFO] [stdout]      |                                  ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `val`
[INFO] [stdout]     --> src/access_method/chain/short_key_mvcc_page.rs:1155:46
[INFO] [stdout]      |
[INFO] [stdout] 1155 |     fn update_with_ts(&mut self, key: &[u8], val: &[u8], ts: u64) -> Result<(), AccessMethodError> {
[INFO] [stdout]      |                                              ^^^ help: if this is intentional, prefix it with an underscore: `_val`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ts`
[INFO] [stdout]     --> src/access_method/chain/short_key_mvcc_page.rs:1155:58
[INFO] [stdout]      |
[INFO] [stdout] 1155 |     fn update_with_ts(&mut self, key: &[u8], val: &[u8], ts: u64) -> Result<(), AccessMethodError> {
[INFO] [stdout]      |                                                          ^^ help: if this is intentional, prefix it with an underscore: `_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]     --> src/access_method/chain/short_key_mvcc_page.rs:1161:9
[INFO] [stdout]      |
[INFO] [stdout] 1161 |         key: &[u8],
[INFO] [stdout]      |         ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `val`
[INFO] [stdout]     --> src/access_method/chain/short_key_mvcc_page.rs:1162:9
[INFO] [stdout]      |
[INFO] [stdout] 1162 |         val: &[u8],
[INFO] [stdout]      |         ^^^ help: if this is intentional, prefix it with an underscore: `_val`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ts`
[INFO] [stdout]     --> src/access_method/chain/short_key_mvcc_page.rs:1163:9
[INFO] [stdout]      |
[INFO] [stdout] 1163 |         ts: u64,
[INFO] [stdout]      |         ^^ help: if this is intentional, prefix it with an underscore: `_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `slot_id`
[INFO] [stdout]     --> src/access_method/chain/short_key_mvcc_page.rs:1164:9
[INFO] [stdout]      |
[INFO] [stdout] 1164 |         slot_id: u32,
[INFO] [stdout]      |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_slot_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/access_method/chain/mod.rs:159:9
[INFO] [stdout]     |
[INFO] [stdout] 159 |         key: &[u8],
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/access_method/chain/mod.rs:160:9
[INFO] [stdout]     |
[INFO] [stdout] 160 |         value: &[u8],
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `merge_fn`
[INFO] [stdout]    --> src/access_method/chain/mod.rs:161:9
[INFO] [stdout]     |
[INFO] [stdout] 161 |         merge_fn: impl Fn(&[u8], &[u8]) -> Vec<u8>,
[INFO] [stdout]     |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_merge_fn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/access_method/chain/mod.rs:167:22
[INFO] [stdout]     |
[INFO] [stdout] 167 |     fn delete(&self, key: &[u8]) -> Result<(), AccessMethodError> {
[INFO] [stdout]     |                      ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `filter`
[INFO] [stdout]    --> src/access_method/chain/mod.rs:183:9
[INFO] [stdout]     |
[INFO] [stdout] 183 |         filter: Arc<dyn Fn(&[u8], &[u8]) -> bool + Send + Sync>,
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_filter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/bp/buffer_pool.rs:852:29
[INFO] [stdout]     |
[INFO] [stdout] 852 |     fn prefetch_page(&self, key: PageFrameKey) -> Result<(), MemPoolStatus> {
[INFO] [stdout]     |                             ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/mvcc_index/dual_heap_hash/chained_hash_table.rs:64:13
[INFO] [stdout]    |
[INFO] [stdout] 64 |         for i in 0..num_buckets {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/mvcc_index/dual_heap_hash/chained_hash_table.rs:382:9
[INFO] [stdout]     |
[INFO] [stdout] 382 |         key: &[u8],
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ts`
[INFO] [stdout]    --> src/mvcc_index/dual_heap_hash/chained_hash_table.rs:383:9
[INFO] [stdout]     |
[INFO] [stdout] 383 |         ts: Timestamp,
[INFO] [stdout]     |         ^^ help: if this is intentional, prefix it with an underscore: `_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/mvcc_index/hash_heap/hash_heap_table.rs:59:13
[INFO] [stdout]    |
[INFO] [stdout] 59 |         let mut meta_page = mem_pool.create_new_page_for_write(c_key).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: `i`
[INFO] [stdout]   --> src/mvcc_index/hash_heap/hash_heap_table.rs:64:13
[INFO] [stdout]    |
[INFO] [stdout] 64 |         for i in 0..num_buckets {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pkey`
[INFO] [stdout]    --> src/mvcc_index/hash_heap/hash_heap_table.rs:170:9
[INFO] [stdout]     |
[INFO] [stdout] 170 |         pkey: &[u8],
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_pkey`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ts`
[INFO] [stdout]    --> src/mvcc_index/hash_heap/hash_heap_table.rs:529:27
[INFO] [stdout]     |
[INFO] [stdout] 529 |     fn split_at_ts(&self, ts: Timestamp) -> Result<(), Self::Error> {
[INFO] [stdout]     |                           ^^ help: if this is intentional, prefix it with an underscore: `_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `str`
[INFO] [stdout]   --> src/mvcc_index/hash_join_page.rs:39:25
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub fn print_statistics(str: impl AsRef<str>) {
[INFO] [stdout]    |                         ^^^ help: if this is intentional, prefix it with an underscore: `_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `slot_prefix`
[INFO] [stdout]     --> src/mvcc_index/hash_join_page.rs:1554:13
[INFO] [stdout]      |
[INFO] [stdout] 1554 |         let slot_prefix = &slot.pkey_prefix()[..prefix_len];
[INFO] [stdout]      |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_slot_prefix`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pkey`
[INFO] [stdout]    --> src/mvcc_index/hash_join_heap_chain.rs:392:9
[INFO] [stdout]     |
[INFO] [stdout] 392 |         pkey: &[u8],
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_pkey`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pkey`
[INFO] [stdout]    --> src/mvcc_index/hash_join_heap_chain.rs:568:9
[INFO] [stdout]     |
[INFO] [stdout] 568 |         pkey: &[u8],
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_pkey`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c_key`
[INFO] [stdout]   --> src/mvcc_index/rust_hash_map/rust_hash_map.rs:27:9
[INFO] [stdout]    |
[INFO] [stdout] 27 |         c_key: crate::prelude::ContainerKey,
[INFO] [stdout]    |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_c_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mem_pool`
[INFO] [stdout]   --> src/mvcc_index/rust_hash_map/rust_hash_map.rs:28:9
[INFO] [stdout]    |
[INFO] [stdout] 28 |         mem_pool: std::sync::Arc<T>,
[INFO] [stdout]    |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_mem_pool`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c_key`
[INFO] [stdout]   --> src/mvcc_index/rust_hash_map/rust_hash_map.rs:39:9
[INFO] [stdout]    |
[INFO] [stdout] 39 |         c_key: crate::prelude::ContainerKey,
[INFO] [stdout]    |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_c_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mem_pool`
[INFO] [stdout]   --> src/mvcc_index/rust_hash_map/rust_hash_map.rs:40:9
[INFO] [stdout]    |
[INFO] [stdout] 40 |         mem_pool: std::sync::Arc<T>,
[INFO] [stdout]    |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_mem_pool`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bucket_num`
[INFO] [stdout]   --> src/mvcc_index/rust_hash_map/rust_hash_map.rs:41:9
[INFO] [stdout]    |
[INFO] [stdout] 41 |         bucket_num: usize,
[INFO] [stdout]    |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bucket_num`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tx_id`
[INFO] [stdout]   --> src/mvcc_index/rust_hash_map/rust_hash_map.rs:56:9
[INFO] [stdout]    |
[INFO] [stdout] 56 |         tx_id: crate::mvcc_index::TxId,
[INFO] [stdout]    |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_tx_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tx_id`
[INFO] [stdout]    --> src/mvcc_index/rust_hash_map/rust_hash_map.rs:115:9
[INFO] [stdout]     |
[INFO] [stdout] 115 |         tx_id: crate::mvcc_index::TxId,
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_tx_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tx_id`
[INFO] [stdout]    --> src/mvcc_index/rust_hash_map/rust_hash_map.rs:138:9
[INFO] [stdout]     |
[INFO] [stdout] 138 |         tx_id: crate::mvcc_index::TxId,
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_tx_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tx_id`
[INFO] [stdout]    --> src/mvcc_index/rust_hash_map/rust_hash_map.rs:161:9
[INFO] [stdout]     |
[INFO] [stdout] 161 |         tx_id: crate::mvcc_index::TxId,
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_tx_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `from_ts`
[INFO] [stdout]    --> src/mvcc_index/rust_hash_map/rust_hash_map.rs:217:9
[INFO] [stdout]     |
[INFO] [stdout] 217 |         from_ts: crate::prelude::Timestamp,
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_from_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `to_ts`
[INFO] [stdout]    --> src/mvcc_index/rust_hash_map/rust_hash_map.rs:218:9
[INFO] [stdout]     |
[INFO] [stdout] 218 |         to_ts: crate::prelude::Timestamp,
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_to_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `safe_ts`
[INFO] [stdout]    --> src/mvcc_index/rust_hash_map/rust_hash_map.rs:242:31
[INFO] [stdout]     |
[INFO] [stdout] 242 |     fn garbage_collect(&self, safe_ts: crate::prelude::Timestamp) -> Result<(), Self::Error> {
[INFO] [stdout]     |                               ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_safe_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ts`
[INFO] [stdout]    --> src/mvcc_index/rust_hash_map/rust_hash_map.rs:291:27
[INFO] [stdout]     |
[INFO] [stdout] 291 |     fn split_at_ts(&self, ts: crate::prelude::Timestamp) -> Result<(), Self::Error> {
[INFO] [stdout]     |                           ^^ help: if this is intentional, prefix it with an underscore: `_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ts`
[INFO] [stdout]   --> src/mvcc_index/ts_partitioned/ts_partitioned_collection.rs:96:26
[INFO] [stdout]    |
[INFO] [stdout] 96 |     pub fn insert(&self, ts: Timestamp, entry: &MvccEntry) -> Result<(), AccessMethodError> {
[INFO] [stdout]    |                          ^^ help: if this is intentional, prefix it with an underscore: `_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ts`
[INFO] [stdout]    --> src/mvcc_index/ts_partitioned/ts_partitioned_collection.rs:148:26
[INFO] [stdout]     |
[INFO] [stdout] 148 |     pub fn update(&self, ts: Timestamp, entry: &MvccEntry) -> Result<(), AccessMethodError> {
[INFO] [stdout]     |                          ^^ help: if this is intentional, prefix it with an underscore: `_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ts`
[INFO] [stdout]    --> src/mvcc_index/ts_partitioned/ts_partitioned_collection.rs:156:9
[INFO] [stdout]     |
[INFO] [stdout] 156 |         ts: Timestamp,
[INFO] [stdout]     |         ^^ help: if this is intentional, prefix it with an underscore: `_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/mvcc_index/ts_partitioned/ts_partitioned_table.rs:53:13
[INFO] [stdout]    |
[INFO] [stdout] 53 |         for i in 0..num_buckets {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pkey`
[INFO] [stdout]    --> src/mvcc_index/ts_partitioned/ts_partitioned_table.rs:107:35
[INFO] [stdout]     |
[INFO] [stdout] 107 |     fn _update(&self, key: &[u8], pkey: &[u8], entry: &MvccEntry) -> Result<(), AccessMethodError> {
[INFO] [stdout]     |                                   ^^^^ help: if this is intentional, prefix it with an underscore: `_pkey`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pkey`
[INFO] [stdout]    --> src/mvcc_index/ts_partitioned/ts_partitioned_table.rs:122:9
[INFO] [stdout]     |
[INFO] [stdout] 122 |         pkey: &[u8],
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_pkey`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/mvcc_index/ts_partitioned/ts_partitioned_table.rs:266:9
[INFO] [stdout]     |
[INFO] [stdout] 266 |         key: &[u8],
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pkey`
[INFO] [stdout]    --> src/mvcc_index/ts_partitioned/ts_partitioned_table.rs:267:9
[INFO] [stdout]     |
[INFO] [stdout] 267 |         pkey: &[u8],
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_pkey`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ts`
[INFO] [stdout]    --> src/mvcc_index/ts_partitioned/ts_partitioned_table.rs:268:9
[INFO] [stdout]     |
[INFO] [stdout] 268 |         ts: Timestamp,
[INFO] [stdout]     |         ^^ help: if this is intentional, prefix it with an underscore: `_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tx_id`
[INFO] [stdout]    --> src/mvcc_index/ts_partitioned/ts_partitioned_table.rs:269:9
[INFO] [stdout]     |
[INFO] [stdout] 269 |         tx_id: TxId,
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_tx_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `config`
[INFO] [stdout]    --> src/tpcc/delivery_txn.rs:213:16
[INFO] [stdout]     |
[INFO] [stdout] 213 |     pub fn new(config: &TPCCConfig, w_id: u16) -> Self {
[INFO] [stdout]     |                ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `txn_storage`
[INFO] [stdout]    --> src/tpcc/loader.rs:166:5
[INFO] [stdout]     |
[INFO] [stdout] 166 |     txn_storage: &impl TxnStorageTrait,
[INFO] [stdout]     |     ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_txn_storage`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `table_info`
[INFO] [stdout]    --> src/tpcc/loader.rs:167:5
[INFO] [stdout]     |
[INFO] [stdout] 167 |     table_info: &TableInfo,
[INFO] [stdout]     |     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_table_info`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `h_c_w_id`
[INFO] [stdout]    --> src/tpcc/loader.rs:168:5
[INFO] [stdout]     |
[INFO] [stdout] 168 |     h_c_w_id: u16,
[INFO] [stdout]     |     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_h_c_w_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `h_c_d_id`
[INFO] [stdout]    --> src/tpcc/loader.rs:169:5
[INFO] [stdout]     |
[INFO] [stdout] 169 |     h_c_d_id: u8,
[INFO] [stdout]     |     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_h_c_d_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `h_c_id`
[INFO] [stdout]    --> src/tpcc/loader.rs:170:5
[INFO] [stdout]     |
[INFO] [stdout] 170 |     h_c_id: u32,
[INFO] [stdout]     |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_h_c_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `h_w_id`
[INFO] [stdout]    --> src/tpcc/loader.rs:171:5
[INFO] [stdout]     |
[INFO] [stdout] 171 |     h_w_id: u16,
[INFO] [stdout]     |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_h_w_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `h_d_id`
[INFO] [stdout]    --> src/tpcc/loader.rs:172:5
[INFO] [stdout]     |
[INFO] [stdout] 172 |     h_d_id: u8,
[INFO] [stdout]     |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_h_d_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/tpcc/neworder_txn.rs:372:14
[INFO] [stdout]     |
[INFO] [stdout] 372 |         for (i, item) in self.items.iter().enumerate() {
[INFO] [stdout]     |              ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `item`
[INFO] [stdout]    --> src/tpcc/neworder_txn.rs:372:17
[INFO] [stdout]     |
[INFO] [stdout] 372 |         for (i, item) in self.items.iter().enumerate() {
[INFO] [stdout]     |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_item`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `config`
[INFO] [stdout]    --> src/tpcc/orderstatus_txn.rs:229:16
[INFO] [stdout]     |
[INFO] [stdout] 229 |     pub fn new(config: &TPCCConfig, w_id: u16) -> Self {
[INFO] [stdout]     |                ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `h_date`
[INFO] [stdout]   --> src/tpcc/payment_txn.rs:51:13
[INFO] [stdout]    |
[INFO] [stdout] 51 |         let h_date = self.input.h_date;
[INFO] [stdout]    |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_h_date`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/tpcc/tx_utils.rs:412:13
[INFO] [stdout]     |
[INFO] [stdout] 412 |         Err(e) => {
[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/tpcc/tx_utils.rs:454:17
[INFO] [stdout]     |
[INFO] [stdout] 454 |             Err(e) => {
[INFO] [stdout]     |                 ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `reason`
[INFO] [stdout]    --> src/tpcc/tx_utils.rs:553:29
[INFO] [stdout]     |
[INFO] [stdout] 553 |             TPCCStatus::Bug(reason) => {
[INFO] [stdout]     |                             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_reason`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `db_id`
[INFO] [stdout]    --> src/txn_storage/inmem/mod.rs:446:9
[INFO] [stdout]     |
[INFO] [stdout] 446 |         db_id: DatabaseId,
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_db_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c_id`
[INFO] [stdout]    --> src/txn_storage/inmem/mod.rs:447:9
[INFO] [stdout]     |
[INFO] [stdout] 447 |         c_id: ContainerId,
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_c_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/txn_storage/inmem/mod.rs:448:9
[INFO] [stdout]     |
[INFO] [stdout] 448 |         key: Vec<u8>,
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/txn_storage/inmem/mod.rs:449:9
[INFO] [stdout]     |
[INFO] [stdout] 449 |         value: Vec<u8>,
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `txn`
[INFO] [stdout]    --> src/txn_storage/inmem/mod.rs:587:9
[INFO] [stdout]     |
[INFO] [stdout] 587 |         txn: &Self::TxnHandle,
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_txn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c_id`
[INFO] [stdout]    --> src/txn_storage/inmem/mod.rs:588:9
[INFO] [stdout]     |
[INFO] [stdout] 588 |         c_id: ContainerId,
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_c_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/txn_storage/inmem/mod.rs:589:9
[INFO] [stdout]     |
[INFO] [stdout] 589 |         key: K,
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `func`
[INFO] [stdout]    --> src/txn_storage/inmem/mod.rs:590:9
[INFO] [stdout]     |
[INFO] [stdout] 590 |         func: F,
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_func`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/txn_storage/ondisk/mod.rs:86:33
[INFO] [stdout]    |
[INFO] [stdout] 86 |             Storage::AppendOnly(v) => {
[INFO] [stdout]    |                                 ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/txn_storage/ondisk/mod.rs:99:33
[INFO] [stdout]    |
[INFO] [stdout] 99 |             Storage::AppendOnly(v) => {
[INFO] [stdout]    |                                 ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]    --> src/txn_storage/ondisk/mod.rs:112:33
[INFO] [stdout]     |
[INFO] [stdout] 112 |             Storage::AppendOnly(v) => {
[INFO] [stdout]     |                                 ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `db_id`
[INFO] [stdout]    --> src/txn_storage/ondisk/mod.rs:334:9
[INFO] [stdout]     |
[INFO] [stdout] 334 |         db_id: DatabaseId,
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_db_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c_id`
[INFO] [stdout]    --> src/txn_storage/ondisk/mod.rs:335:9
[INFO] [stdout]     |
[INFO] [stdout] 335 |         c_id: ContainerId,
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_c_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/txn_storage/ondisk/mod.rs:336:9
[INFO] [stdout]     |
[INFO] [stdout] 336 |         key: Vec<u8>,
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/txn_storage/ondisk/mod.rs:337:9
[INFO] [stdout]     |
[INFO] [stdout] 337 |         value: Vec<u8>,
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `txn`
[INFO] [stdout]    --> src/txn_storage/ondisk/mod.rs:473:9
[INFO] [stdout]     |
[INFO] [stdout] 473 |         txn: &Self::TxnHandle,
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_txn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c_id`
[INFO] [stdout]    --> src/txn_storage/ondisk/mod.rs:474:9
[INFO] [stdout]     |
[INFO] [stdout] 474 |         c_id: ContainerId,
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_c_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/txn_storage/ondisk/mod.rs:475:9
[INFO] [stdout]     |
[INFO] [stdout] 475 |         key: K,
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `func`
[INFO] [stdout]    --> src/txn_storage/ondisk/mod.rs:476:9
[INFO] [stdout]     |
[INFO] [stdout] 476 |         func: F,
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_func`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `txn`
[INFO] [stdout]    --> src/txn_storage/ondisk/mod.rs:513:9
[INFO] [stdout]     |
[INFO] [stdout] 513 |         txn: &Self::TxnHandle,
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_txn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sss`
[INFO] [stdout]    --> src/txn_storage/ondisk_2pl/mod.rs:734:9
[INFO] [stdout]     |
[INFO] [stdout] 734 |         sss: &SecondaryStorages<M>,
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_sss`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `db_id`
[INFO] [stdout]    --> src/txn_storage/ondisk_2pl/mod.rs:932:9
[INFO] [stdout]     |
[INFO] [stdout] 932 |         db_id: DatabaseId,
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_db_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c_id`
[INFO] [stdout]    --> src/txn_storage/ondisk_2pl/mod.rs:933:9
[INFO] [stdout]     |
[INFO] [stdout] 933 |         c_id: ContainerId,
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_c_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `db_id`
[INFO] [stdout]    --> src/txn_storage/ondisk_2pl/mod.rs:953:31
[INFO] [stdout]     |
[INFO] [stdout] 953 |     fn list_containers(&self, db_id: DatabaseId) -> Result<HashSet<ContainerId>, TxnStorageStatus> {
[INFO] [stdout]     |                               ^^^^^ help: if this is intentional, prefix it with an underscore: `_db_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `db_id`
[INFO] [stdout]    --> src/txn_storage/ondisk_2pl/mod.rs:959:9
[INFO] [stdout]     |
[INFO] [stdout] 959 |         db_id: DatabaseId,
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_db_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `options`
[INFO] [stdout]    --> src/txn_storage/ondisk_2pl/mod.rs:983:9
[INFO] [stdout]     |
[INFO] [stdout] 983 |         options: TxnOptions,
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_options`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `txn`
[INFO] [stdout]     --> src/txn_storage/ondisk_2pl/mod.rs:1015:28
[INFO] [stdout]      |
[INFO] [stdout] 1015 |     fn wait_for_txn(&self, txn: &Self::TxnHandle) -> Result<(), TxnStorageStatus> {
[INFO] [stdout]      |                            ^^^ help: if this is intentional, prefix it with an underscore: `_txn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `txn`
[INFO] [stdout]     --> src/txn_storage/ondisk_2pl/mod.rs:1019:24
[INFO] [stdout]      |
[INFO] [stdout] 1019 |     fn drop_txn(&self, txn: Self::TxnHandle) -> Result<(), TxnStorageStatus> {
[INFO] [stdout]      |                        ^^^ help: if this is intentional, prefix it with an underscore: `_txn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `txn`
[INFO] [stdout]     --> src/txn_storage/ondisk_2pl/mod.rs:1025:9
[INFO] [stdout]      |
[INFO] [stdout] 1025 |         txn: &Self::TxnHandle,
[INFO] [stdout]      |         ^^^ help: if this is intentional, prefix it with an underscore: `_txn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c_id`
[INFO] [stdout]     --> src/txn_storage/ondisk_2pl/mod.rs:1026:9
[INFO] [stdout]      |
[INFO] [stdout] 1026 |         c_id: ContainerId,
[INFO] [stdout]      |         ^^^^ help: if this is intentional, prefix it with an underscore: `_c_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `txn`
[INFO] [stdout]     --> src/txn_storage/ondisk_2pl/mod.rs:1033:9
[INFO] [stdout]      |
[INFO] [stdout] 1033 |         txn: &Self::TxnHandle,
[INFO] [stdout]      |         ^^^ help: if this is intentional, prefix it with an underscore: `_txn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c_id`
[INFO] [stdout]     --> src/txn_storage/ondisk_2pl/mod.rs:1034:9
[INFO] [stdout]      |
[INFO] [stdout] 1034 |         c_id: ContainerId,
[INFO] [stdout]      |         ^^^^ help: if this is intentional, prefix it with an underscore: `_c_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]     --> src/txn_storage/ondisk_2pl/mod.rs:1035:9
[INFO] [stdout]      |
[INFO] [stdout] 1035 |         key: K,
[INFO] [stdout]      |         ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ss`
[INFO] [stdout]     --> src/txn_storage/ondisk_2pl/mod.rs:1049:22
[INFO] [stdout]      |
[INFO] [stdout] 1049 |                 Some(ss) => {
[INFO] [stdout]      |                      ^^ help: if this is intentional, prefix it with an underscore: `_ss`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ss`
[INFO] [stdout]     --> src/txn_storage/ondisk_2pl/mod.rs:1067:22
[INFO] [stdout]      |
[INFO] [stdout] 1067 |                 Some(ss) => {
[INFO] [stdout]      |                      ^^ help: if this is intentional, prefix it with an underscore: `_ss`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ss`
[INFO] [stdout]     --> src/txn_storage/ondisk_2pl/mod.rs:1088:22
[INFO] [stdout]      |
[INFO] [stdout] 1088 |                 Some(ss) => {
[INFO] [stdout]      |                      ^^ help: if this is intentional, prefix it with an underscore: `_ss`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ss`
[INFO] [stdout]     --> src/txn_storage/ondisk_2pl/mod.rs:1107:22
[INFO] [stdout]      |
[INFO] [stdout] 1107 |                 Some(ss) => {
[INFO] [stdout]      |                      ^^ help: if this is intentional, prefix it with an underscore: `_ss`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ss`
[INFO] [stdout]     --> src/txn_storage/ondisk_2pl/mod.rs:1129:22
[INFO] [stdout]      |
[INFO] [stdout] 1129 |                 Some(ss) => {
[INFO] [stdout]      |                      ^^ help: if this is intentional, prefix it with an underscore: `_ss`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ss`
[INFO] [stdout]     --> src/txn_storage/ondisk_2pl/mod.rs:1146:22
[INFO] [stdout]      |
[INFO] [stdout] 1146 |                 Some(ss) => {
[INFO] [stdout]      |                      ^^ help: if this is intentional, prefix it with an underscore: `_ss`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `txn`
[INFO] [stdout]     --> src/txn_storage/ondisk_2pl/mod.rs:1156:9
[INFO] [stdout]      |
[INFO] [stdout] 1156 |         txn: &Self::TxnHandle,
[INFO] [stdout]      |         ^^^ help: if this is intentional, prefix it with an underscore: `_txn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `iter`
[INFO] [stdout]     --> src/txn_storage/ondisk_2pl/mod.rs:1195:36
[INFO] [stdout]      |
[INFO] [stdout] 1195 |     fn drop_iterator_handle(&self, iter: Self::IteratorHandle) -> Result<(), TxnStorageStatus> {
[INFO] [stdout]      |                                    ^^^^ help: if this is intentional, prefix it with an underscore: `_iter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/txn_storage/ondisk_silo/mod.rs:74:33
[INFO] [stdout]    |
[INFO] [stdout] 74 |             Storage::AppendOnly(v) => {
[INFO] [stdout]    |                                 ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/txn_storage/ondisk_silo/mod.rs:87:33
[INFO] [stdout]    |
[INFO] [stdout] 87 |             Storage::AppendOnly(v) => {
[INFO] [stdout]    |                                 ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]    --> src/txn_storage/ondisk_silo/mod.rs:100:33
[INFO] [stdout]     |
[INFO] [stdout] 100 |             Storage::AppendOnly(v) => {
[INFO] [stdout]     |                                 ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `db_id`
[INFO] [stdout]    --> src/txn_storage/txn_storage_trait.rs:189:9
[INFO] [stdout]     |
[INFO] [stdout] 189 |         db_id: DatabaseId,
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_db_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c_id`
[INFO] [stdout]    --> src/txn_storage/txn_storage_trait.rs:190:9
[INFO] [stdout]     |
[INFO] [stdout] 190 |         c_id: ContainerId,
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_c_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `start_ts`
[INFO] [stdout]    --> src/naive_hash_index/naive_hash_table/hash_join_page.rs:424:9
[INFO] [stdout]     |
[INFO] [stdout] 424 |         start_ts: Timestamp,
[INFO] [stdout]     |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_start_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `end_ts`
[INFO] [stdout]    --> src/naive_hash_index/naive_hash_table/hash_join_page.rs:425:9
[INFO] [stdout]     |
[INFO] [stdout] 425 |         end_ts: Timestamp,
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_end_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `slot_prefix`
[INFO] [stdout]    --> src/naive_hash_index/naive_hash_table/hash_join_page.rs:609:13
[INFO] [stdout]     |
[INFO] [stdout] 609 |         let slot_prefix = &slot.pkey_prefix()[..prefix_len];
[INFO] [stdout]     |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_slot_prefix`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/naive_hash_index/naive_hash_table/hash_join_table.rs:61:13
[INFO] [stdout]    |
[INFO] [stdout] 61 |         let mut meta_page = mem_pool.create_new_page_for_write(c_key).unwrap();
[INFO] [stdout]    |             ----^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/naive_hash_index/naive_hash_table/hash_join_table.rs:66:13
[INFO] [stdout]    |
[INFO] [stdout] 66 |         for i in 0..num_buckets {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ts`
[INFO] [stdout]    --> src/naive_hash_index/naive_hash_table/hash_join_table.rs:138:27
[INFO] [stdout]     |
[INFO] [stdout] 138 |     fn split_at_ts(&self, ts: Timestamp) -> Result<(), AccessMethodError> {
[INFO] [stdout]     |                           ^^ help: if this is intentional, prefix it with an underscore: `_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/naive_hash_index/naive_mvht.rs:48:13
[INFO] [stdout]    |
[INFO] [stdout] 48 |         let mut vec_updates = Vec::<Record>::new();
[INFO] [stdout]    |             ----^^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `set_offset`, `set_key_size`, and `set_val_size` are never used
[INFO] [stdout]   --> src/access_method/append_only_store/append_only_page.rs:76:16
[INFO] [stdout]    |
[INFO] [stdout] 22 |     impl Slot {
[INFO] [stdout]    |     --------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 76 |         pub fn set_offset(&mut self, offset: u32) {
[INFO] [stdout]    |                ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 84 |         pub fn set_key_size(&mut self, key_size: u32) {
[INFO] [stdout]    |                ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 92 |         pub fn set_val_size(&mut self, val_size: u32) {
[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 `c_key` and `meta_page_id` are never read
[INFO] [stdout]   --> src/access_method/chain/mod.rs:29:5
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub struct HashReadOptimize<T: MemPool> {
[INFO] [stdout]    |            ---------------- fields in this struct
[INFO] [stdout] 28 |     pub mem_pool: Arc<T>,
[INFO] [stdout] 29 |     c_key: ContainerKey,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 30 |     num_buckets: usize,
[INFO] [stdout] 31 |     meta_page_id: PageId, // Stores the number of buckets and all the page ids of the first of the chain
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `ReadOptimizedPage` is never used
[INFO] [stdout]    --> src/access_method/chain/short_key_mvcc_page.rs:372:11
[INFO] [stdout]     |
[INFO] [stdout] 372 | pub trait ReadOptimizedPage {
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PAGE_HEADER_SIZE` is never used
[INFO] [stdout]  --> src/access_method/chain/short_key_mvcc_page.rs:8:15
[INFO] [stdout]   |
[INFO] [stdout] 8 |     pub const PAGE_HEADER_SIZE: usize = std::mem::size_of::<Header>();
[INFO] [stdout]   |               ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Header` is never constructed
[INFO] [stdout]   --> src/access_method/chain/short_key_mvcc_page.rs:10:16
[INFO] [stdout]    |
[INFO] [stdout] 10 |     pub struct Header {
[INFO] [stdout]    |                ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/access_method/chain/short_key_mvcc_page.rs:19:16
[INFO] [stdout]     |
[INFO] [stdout]  18 |     impl Header {
[INFO] [stdout]     |     ----------- associated items in this implementation
[INFO] [stdout]  19 |         pub fn from_bytes(bytes: &[u8; PAGE_HEADER_SIZE]) -> Self {
[INFO] [stdout]     |                ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  60 |         pub fn to_bytes(&self) -> [u8; PAGE_HEADER_SIZE] {
[INFO] [stdout]     |                ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  80 |         pub fn new() -> Self {
[INFO] [stdout]     |                ^^^
[INFO] [stdout] ...
[INFO] [stdout]  90 |         pub fn next_page(&self) -> Option<(PageId, u32)> {
[INFO] [stdout]     |                ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  98 |         pub fn set_next_page(&mut self, next_page_id: PageId, frame_id: u32) {
[INFO] [stdout]     |                ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 103 |         pub fn next_page_id(&self) -> PageId {
[INFO] [stdout]     |                ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 107 |         pub fn set_next_page_id(&mut self, next_page_id: PageId) {
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 111 |         pub fn next_frame_id(&self) -> u32 {
[INFO] [stdout]     |                ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 115 |         pub fn set_next_frame_id(&mut self, next_frame_id: u32) {
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |         pub fn total_bytes_used(&self) -> u32 {
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 123 |         pub fn set_total_bytes_used(&mut self, total_bytes_used: u32) {
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 127 |         pub fn slot_count(&self) -> u32 {
[INFO] [stdout]     |                ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 131 |         pub fn set_slot_count(&mut self, slot_count: u32) {
[INFO] [stdout]     |                ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 135 |         pub fn increment_slot_count(&mut self) {
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 139 |         pub fn decrement_slot_count(&mut self) {
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 143 |         pub fn rec_start_offset(&self) -> u32 {
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 147 |         pub fn set_rec_start_offset(&mut self, rec_start_offset: u32) {
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SLOT_SIZE` is never used
[INFO] [stdout]    --> src/access_method/chain/short_key_mvcc_page.rs:155:15
[INFO] [stdout]     |
[INFO] [stdout] 155 |     pub const SLOT_SIZE: usize = std::mem::size_of::<Slot>();
[INFO] [stdout]     |               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SLOT_KEY_PREFIX_SIZE` is never used
[INFO] [stdout]    --> src/access_method/chain/short_key_mvcc_page.rs:156:15
[INFO] [stdout]     |
[INFO] [stdout] 156 |     pub const SLOT_KEY_PREFIX_SIZE: usize = std::mem::size_of::<[u8; 8]>();
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Slot` is never constructed
[INFO] [stdout]    --> src/access_method/chain/short_key_mvcc_page.rs:159:16
[INFO] [stdout]     |
[INFO] [stdout] 159 |     pub struct Slot {
[INFO] [stdout]     |                ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/access_method/chain/short_key_mvcc_page.rs:169:16
[INFO] [stdout]     |
[INFO] [stdout] 168 |     impl Slot {
[INFO] [stdout]     |     --------- associated items in this implementation
[INFO] [stdout] 169 |         pub fn to_bytes(&self) -> [u8; SLOT_SIZE] {
[INFO] [stdout]     |                ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 201 |         pub fn from_bytes(bytes: &[u8; SLOT_SIZE]) -> Self {
[INFO] [stdout]     |                ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 243 |         pub fn new(key: &[u8], val: &[u8], offset: usize) -> Self {
[INFO] [stdout]     |                ^^^
[INFO] [stdout] ...
[INFO] [stdout] 260 |         pub fn new_with_start_ts(key: &[u8], val: &[u8], start_ts: u64, offset: usize) -> Self {
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 277 |         pub fn key_size(&self) -> u32 {
[INFO] [stdout]     |                ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 281 |         pub fn key_prefix(&self) -> &[u8] {
[INFO] [stdout]     |                ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 285 |         pub fn val_size(&self) -> u32 {
[INFO] [stdout]     |                ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 289 |         pub fn set_val_size(&mut self, val_size: usize) {
[INFO] [stdout]     |                ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 293 |         pub fn offset(&self) -> u32 {
[INFO] [stdout]     |                ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 297 |         pub fn set_offset(&mut self, offset: u32) {
[INFO] [stdout]     |                ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 301 |         pub fn start_ts(&self) -> u64 {
[INFO] [stdout]     |                ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 305 |         pub fn set_start_ts(&mut self, start_ts: u64) {
[INFO] [stdout]     |                ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Record` is never constructed
[INFO] [stdout]    --> src/access_method/chain/short_key_mvcc_page.rs:314:16
[INFO] [stdout]     |
[INFO] [stdout] 314 |     pub struct Record {
[INFO] [stdout]     |                ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/access_method/chain/short_key_mvcc_page.rs:320:16
[INFO] [stdout]     |
[INFO] [stdout] 319 |     impl Record {
[INFO] [stdout]     |     ----------- associated items in this implementation
[INFO] [stdout] 320 |         pub fn from_bytes(bytes: &[u8], key_size: u32, val_size: u32) -> Self {
[INFO] [stdout]     |                ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 331 |         pub fn to_bytes(&self) -> Vec<u8> {
[INFO] [stdout]     |                ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 340 |         pub fn new(key: &[u8], val: &[u8]) -> Self {
[INFO] [stdout]     |                ^^^
[INFO] [stdout] ...
[INFO] [stdout] 353 |         pub fn remain_key(&self) -> &[u8] {
[INFO] [stdout]     |                ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 357 |         pub fn val(&self) -> &[u8] {
[INFO] [stdout]     |                ^^^
[INFO] [stdout] ...
[INFO] [stdout] 361 |         pub fn update(&mut self, new_val: &[u8]) {
[INFO] [stdout]     |                ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 365 |         pub fn update_with_merge(&mut self, new_val: &[u8], merge_fn: fn(&[u8], &[u8]) -> Vec<u8>) {
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `c_key` and `meta_page_id` are never read
[INFO] [stdout]   --> src/access_method/hash_fbt/mod.rs:30:5
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub struct HashFosterBtree<T: MemPool> {
[INFO] [stdout]    |            --------------- fields in this struct
[INFO] [stdout] 29 |     pub mem_pool: Arc<T>,
[INFO] [stdout] 30 |     c_key: ContainerKey,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 31 |     num_buckets: usize,
[INFO] [stdout] 32 |     meta_page_id: PageId, // Stores the number of buckets and all the page ids of the root of the foster btrees
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `current` is never read
[INFO] [stdout]    --> src/access_method/hash_fbt/mod.rs:313:5
[INFO] [stdout]     |
[INFO] [stdout] 311 | pub struct HashFosterBtreeOrderedIter<T: Iterator<Item = (Vec<u8>, Vec<u8>)>> {
[INFO] [stdout]     |            -------------------------- field in this struct
[INFO] [stdout] 312 |     scanners: Vec<T>,
[INFO] [stdout] 313 |     current: usize,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `c_key` and `meta_page_id` are never read
[INFO] [stdout]    --> src/access_method/hash_fbt/mod.rs:390:5
[INFO] [stdout]     |
[INFO] [stdout] 388 | pub struct HashFosterBtreeAppendOnly<T: MemPool> {
[INFO] [stdout]     |            ------------------------- fields in this struct
[INFO] [stdout] 389 |     pub mem_pool: Arc<T>,
[INFO] [stdout] 390 |     c_key: ContainerKey,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 391 |     num_buckets: usize,
[INFO] [stdout] 392 |     meta_page_id: PageId, // Stores the number of buckets and all the page ids of the root of the foster btrees
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `to_string` is never used
[INFO] [stdout]    --> src/bp/buffer_pool.rs:240:12
[INFO] [stdout]     |
[INFO] [stdout] 211 | impl RuntimeStats {
[INFO] [stdout]     | ----------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 240 |     pub fn to_string(&self) -> String {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DummyEvictionPolicy` is never constructed
[INFO] [stdout]   --> src/bp/eviction_policy.rs:19:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct DummyEvictionPolicy; // Used for in-memory pool
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `c_key` and `mem_pool` are never read
[INFO] [stdout]   --> src/mvcc_index/dual_heap_hash/chained_hash_bucket_second.rs:29:5
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub struct DualChainBucket<T: MemPool> {
[INFO] [stdout]    |            --------------- fields in this struct
[INFO] [stdout] 29 |     c_key: ContainerKey,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 30 |     mem_pool: Arc<T>,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `meta_page_id` and `meta_frame_id` are never read
[INFO] [stdout]   --> src/mvcc_index/hash_heap/hash_heap_table.rs:37:5
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub struct HeapHashTable<T: MemPool + 'static> {
[INFO] [stdout]    |            ------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 37 |     meta_page_id: PageId,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 38 |     meta_frame_id: AtomicU32,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `create_key_from_item` is never used
[INFO] [stdout]   --> src/tpcc/record_definitions.rs:37:8
[INFO] [stdout]    |
[INFO] [stdout] 30 | impl ItemKey {
[INFO] [stdout]    | ------------ associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 37 |     fn create_key_from_item(item: &Item) -> Self {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `from_num`, `copy_from`, `get_d_id`, and `get_w_id` are never used
[INFO] [stdout]    --> src/tpcc/record_definitions.rs:228:8
[INFO] [stdout]     |
[INFO] [stdout] 220 | impl CustomerSecondaryKey {
[INFO] [stdout]     | ------------------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 228 |     fn from_num(num: u32) -> Self {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 235 |     fn copy_from(other: &Self) -> Self {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 241 |     fn get_d_id(&self) -> u8 {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 249 |     fn get_w_id(&self) -> u16 {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `o_id`, `d_id`, `w_id`, and `create_key_from_order` are never used
[INFO] [stdout]    --> src/tpcc/record_definitions.rs:325:8
[INFO] [stdout]     |
[INFO] [stdout] 324 | impl OrderKey {
[INFO] [stdout]     | ------------- associated items in this implementation
[INFO] [stdout] 325 |     fn o_id(&self) -> u32 {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 329 |     fn d_id(&self) -> u8 {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 333 |     fn w_id(&self) -> u16 {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 346 |     fn create_key_from_order(o: &Order) -> Self {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `ol_number`, `o_id`, `d_id`, `w_id`, and `create_key_from_orderline` are never used
[INFO] [stdout]    --> src/tpcc/record_definitions.rs:434:8
[INFO] [stdout]     |
[INFO] [stdout] 433 | impl OrderLineKey {
[INFO] [stdout]     | ----------------- associated items in this implementation
[INFO] [stdout] 434 |     fn ol_number(&self) -> u8 {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 438 |     fn o_id(&self) -> u32 {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 442 |     fn d_id(&self) -> u8 {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 446 |     fn w_id(&self) -> u16 {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 462 |     fn create_key_from_orderline(ol: &OrderLine) -> Self {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `create_key_from_new_order` is never used
[INFO] [stdout]    --> src/tpcc/record_definitions.rs:513:8
[INFO] [stdout]     |
[INFO] [stdout] 486 | impl NewOrderKey {
[INFO] [stdout]     | ---------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 513 |     fn create_key_from_new_order(no: &NewOrder) -> Self {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `print` is never used
[INFO] [stdout]    --> src/tpcc/record_definitions.rs:886:8
[INFO] [stdout]     |
[INFO] [stdout] 832 | impl District {
[INFO] [stdout]     | ------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 886 |     fn print(&self) -> String {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SingleThreadLockTable` is never constructed
[INFO] [stdout]    --> src/txn_storage/locktable.rs:132:12
[INFO] [stdout]     |
[INFO] [stdout] 132 | pub struct SingleThreadLockTable {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/txn_storage/locktable.rs:150:12
[INFO] [stdout]     |
[INFO] [stdout] 149 | impl SingleThreadLockTable {
[INFO] [stdout]     | -------------------------- associated items in this implementation
[INFO] [stdout] 150 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 156 |     pub fn try_shared(&self, key: Vec<u8>) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 171 |     pub fn try_exclusive(&self, key: Vec<u8>) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 186 |     pub fn try_upgrade(&self, key: Vec<u8>) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 196 |     pub fn downgrade(&self, key: &[u8]) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 204 |     pub fn release_shared(&self, key: Vec<u8>) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 219 |     pub fn release_exclusive(&self, key: Vec<u8>) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 234 |     pub fn check_all_released(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 238 |     pub fn check_state(&self, key: &[u8]) {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MvccHashStorage` is never constructed
[INFO] [stdout]   --> src/txn_storage/mvcc_hash_storage/mod.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct MvccHashStorage<T: MemPool, M: MvccIndex<T>> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/txn_storage/mvcc_hash_storage/mod.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 28 | impl<T: MemPool, M: MvccIndex<T>> MvccHashStorage<T, M> {
[INFO] [stdout]    | ------------------------------------------------------- associated function in this implementation
[INFO] [stdout] 29 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `MvccHashIterator` is never used
[INFO] [stdout]   --> src/txn_storage/mvcc_hash_storage/mod.rs:40:10
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub enum MvccHashIterator {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `HashMap` is never constructed
[INFO] [stdout]   --> src/txn_storage/ondisk/mod.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub enum Storage<M: MemPool> {
[INFO] [stdout]    |          ------- variant in this enum
[INFO] [stdout] 23 |     HashMap(),
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `remove` is never used
[INFO] [stdout]    --> src/txn_storage/ondisk_2pl/mod.rs:199:12
[INFO] [stdout]     |
[INFO] [stdout] 177 | impl ReadWriteSet {
[INFO] [stdout]     | ----------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 199 |     pub fn remove(&self, key: &[u8]) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Storage` is never used
[INFO] [stdout]   --> src/txn_storage/ondisk_silo/mod.rs:10:10
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub enum Storage<M: MemPool> {
[INFO] [stdout]    |          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/txn_storage/ondisk_silo/mod.rs:19:8
[INFO] [stdout]     |
[INFO] [stdout]  18 | impl<M: MemPool> Storage<M> {
[INFO] [stdout]     | --------------------------- associated items in this implementation
[INFO] [stdout]  19 |     fn new(db_id: DatabaseId, c_id: ContainerId, c_type: ContainerDS, bp: Arc<M>) -> Self {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout]  35 |     fn load(db_id: DatabaseId, c_id: ContainerId, c_type: ContainerDS, bp: Arc<M>) -> Self {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout]  53 |     fn clear(&self) {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  57 |     fn insert(&self, key: Vec<u8>, val: Vec<u8>) -> Result<(), TxnStorageStatus> {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  68 |     fn get(&self, key: &[u8]) -> Result<Vec<u8>, TxnStorageStatus> {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout]  81 |     fn update(&self, key: &[u8], val: Vec<u8>) -> Result<(), TxnStorageStatus> {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  94 |     fn remove(&self, key: &[u8]) -> Result<(), TxnStorageStatus> {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     fn num_values(&self) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `OnDiskSiloStorage` is never constructed
[INFO] [stdout]    --> src/txn_storage/ondisk_silo/mod.rs:130:12
[INFO] [stdout]     |
[INFO] [stdout] 130 | pub struct OnDiskSiloStorage<T: MemPool> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_stats`, `reset_stats`, and `prefetch_page` are never used
[INFO] [stdout]   --> src/file_manager.rs:58:16
[INFO] [stdout]    |
[INFO] [stdout] 28 |     impl FileManager {
[INFO] [stdout]    |     ---------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 58 |         pub fn get_stats(&self) -> String {
[INFO] [stdout]    |                ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 68 |         pub fn reset_stats(&self) {
[INFO] [stdout]    |                ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 74 |         pub fn prefetch_page(&self, _page_id: PageId) -> Result<(), std::io::Error> {
[INFO] [stdout]    |                ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `HybridLatch` is never constructed
[INFO] [stdout]  --> src/hybrid_latch.rs:8:12
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub struct HybridLatch {
[INFO] [stdout]   |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `version`, `is_exclusive`, `release_exclusive`, and `try_exclusive` are never used
[INFO] [stdout]   --> src/hybrid_latch.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl HybridLatch {
[INFO] [stdout]    | ---------------- associated items in this implementation
[INFO] [stdout] 14 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 21 |     pub fn version(&self) -> u64 {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 25 |     pub fn is_exclusive(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 29 |     pub fn release_exclusive(&self) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 34 |     pub fn try_exclusive(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `HybridLatchGuardedStructure` is never constructed
[INFO] [stdout]   --> src/hybrid_latch.rs:39:12
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub struct HybridLatchGuardedStructure<T: Clone> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `optimistic_read`, and `write` are never used
[INFO] [stdout]   --> src/hybrid_latch.rs:45:12
[INFO] [stdout]    |
[INFO] [stdout] 44 | impl<T: Clone> HybridLatchGuardedStructure<T> {
[INFO] [stdout]    | --------------------------------------------- associated items in this implementation
[INFO] [stdout] 45 |     pub fn new(data: T) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 52 |     pub fn optimistic_read(&self) -> OptimisticReadGuard<T> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 69 |     pub fn write(&self) -> WriteGuard<T> {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `OptimisticReadGuard` is never constructed
[INFO] [stdout]   --> src/hybrid_latch.rs:86:12
[INFO] [stdout]    |
[INFO] [stdout] 86 | pub struct OptimisticReadGuard<T: Clone> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `validate`, `try_upgrade`, and `get` are never used
[INFO] [stdout]    --> src/hybrid_latch.rs:92:12
[INFO] [stdout]     |
[INFO] [stdout]  91 | impl<T: Clone> OptimisticReadGuard<T> {
[INFO] [stdout]     | ------------------------------------- methods in this implementation
[INFO] [stdout]  92 |     pub fn validate(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 104 |     pub fn try_upgrade(self) -> Option<WriteGuard<T>> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 124 |     pub unsafe fn get(&self) -> &T {
[INFO] [stdout]     |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `WriteGuard` is never constructed
[INFO] [stdout]    --> src/hybrid_latch.rs:129:12
[INFO] [stdout]     |
[INFO] [stdout] 129 | pub struct WriteGuard<T: Clone> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `log` is never used
[INFO] [stdout]   --> src/logger.rs:20:8
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub fn log(level: &str, file: &str, line: u32, message: &str) {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `SingleTsHashTable` is never used
[INFO] [stdout]   --> src/naive_hash_index/naive_hash_table/mod.rs:12:11
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub trait SingleTsHashTable<T: MemPool>: Send + Sync + Any {
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `first_page_write` is never used
[INFO] [stdout]    --> src/naive_hash_index/naive_hash_table/hash_join_chain.rs:308:8
[INFO] [stdout]     |
[INFO] [stdout]  37 | impl<T: MemPool + 'static> HeapHashChain<T> {
[INFO] [stdout]     | ------------------------------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 308 |     fn first_page_write(&self) -> FrameWriteGuard {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/naive_hash_index/naive_hash_table/hash_join_page.rs:234:8
[INFO] [stdout]     |
[INFO] [stdout] 225 | pub trait NaiveHashPage {
[INFO] [stdout]     |           ------------- associated items in this trait
[INFO] [stdout] ...
[INFO] [stdout] 234 |     fn insert_recent_history(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 252 |     fn write_bytes(&mut self, offset: usize, bytes: &[u8]);
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 262 |     fn require_space(entry: &MvccEntry) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 279 |     fn set_next_page_frame(&mut self, page_frame: (PageId, u32)) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 293 |     fn set_slot_count(&mut self, slot_count: usize) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 297 |     fn slot_end_offset(&self) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 310 |     fn decrease_total_bytes_used(&mut self, bytes: usize) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 317 |     fn decrease_slot_count(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 325 |     fn slot(&self, slot_id: usize) -> Slot {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 330 |     fn unsafe_slot_mut(&mut self, slot_id: usize) -> &mut Slot {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 341 |     fn record_ref_from_slotid(&self, slot_id: usize) -> RecordRef {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 362 |     fn set_record_ref_at_offset(&mut self, offset: usize, rec: &RecordRef) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 369 |     fn delete_slot_at_id(&mut self, slot_id: usize);
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 375 |     fn slot_pkey_matches_new(&self, slot: &Slot, pkey: &[u8]) -> bool;
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 376 |     fn get_pkey_from_slot(&self, slot: &Slot) -> &[u8];
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 382 |     fn slot_cmp_key(&self, slot_id: usize, search_key: &[u8]) -> std::cmp::Ordering;
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]   --> src/naive_hash_index/naive_hash_table/hash_join_page.rs:36:16
[INFO] [stdout]    |
[INFO] [stdout] 12 |     impl Header {
[INFO] [stdout]    |     ----------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 36 |         pub fn next_page_id(&self) -> Option<PageId> {
[INFO] [stdout]    |                ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 44 |         pub fn set_next_page_id(&mut self, next_page_id: PageId) {
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 48 |         pub fn next_frame_id(&self) -> u32 {
[INFO] [stdout]    |                ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 52 |         pub fn set_next_frame_id(&mut self, next_frame_id: u32) {
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 64 |         pub fn inc_total_bytes_used(&mut self, bytes: usize) {
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 68 |         pub fn dec_total_bytes_used(&mut self, bytes: usize) {
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 76 |         pub fn set_slot_count(&mut self, slot_count: usize) {
[INFO] [stdout]    |                ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 84 |         pub fn dec_slot_count(&mut self) {
[INFO] [stdout]    |                ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `unsafe_from_bytes_mut`, `tx_id`, `set_val_size`, and `set_offset` are never used
[INFO] [stdout]    --> src/naive_hash_index/naive_hash_table/hash_join_page.rs:143:23
[INFO] [stdout]     |
[INFO] [stdout] 134 |     impl Slot {
[INFO] [stdout]     |     --------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 143 |         pub unsafe fn unsafe_from_bytes_mut(bytes: &[u8]) -> &mut Slot {
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 188 |         pub fn tx_id(&self) -> TxId {
[INFO] [stdout]     |                ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 196 |         pub fn set_val_size(&mut self, val_size: usize) {
[INFO] [stdout]     |                ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 204 |         pub fn set_offset(&mut self, offset: usize) {
[INFO] [stdout]     |                ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PAGE_ID_SIZE` is never used
[INFO] [stdout]   --> src/naive_hash_index/naive_hash_table/hash_join_table.rs:21:11
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub const PAGE_ID_SIZE: usize = std::mem::size_of::<PageId>();
[INFO] [stdout]    |           ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `DEAFAULT_FIRST_BUCKET_NUM` is never used
[INFO] [stdout]   --> src/naive_hash_index/naive_hash_table/hash_join_table.rs:22:11
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub const DEAFAULT_FIRST_BUCKET_NUM: usize = 128;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `c_key`, `mem_pool`, `meta_page_id`, and `meta_frame_id` are never read
[INFO] [stdout]   --> src/naive_hash_index/naive_hash_table/hash_join_table.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct NaiveHashTable<T: MemPool + 'static> {
[INFO] [stdout]    |            -------------- fields in this struct
[INFO] [stdout] 25 |     c_key: ContainerKey,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 26 |     mem_pool: Arc<T>,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 27 |
[INFO] [stdout] 28 |     meta_page_id: PageId,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 29 |     meta_frame_id: AtomicU32,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `as_any`, `create`, and `split_at_ts` are never used
[INFO] [stdout]    --> src/naive_hash_index/naive_hash_table/hash_join_table.rs:37:12
[INFO] [stdout]     |
[INFO] [stdout]  35 | impl<T: MemPool + 'static> NaiveHashTable<T> {
[INFO] [stdout]     | -------------------------------------------- associated items in this implementation
[INFO] [stdout]  36 |     /// Creates a new hash join table with the default number of buckets.
[INFO] [stdout]  37 |     pub fn new(c_key: ContainerKey, mem_pool: Arc<T>) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 129 |     fn as_any(&self) -> &dyn std::any::Any {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 132 |     fn create(c_key: ContainerKey, mem_pool: Arc<T>) -> Result<Self, AccessMethodError>
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 138 |     fn split_at_ts(&self, ts: Timestamp) -> Result<(), AccessMethodError> {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `UpdatesAtTs` is never constructed
[INFO] [stdout]   --> src/naive_hash_index/naive_mvht.rs:21:8
[INFO] [stdout]    |
[INFO] [stdout] 21 | struct UpdatesAtTs {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `KeyAndValue` is never constructed
[INFO] [stdout]   --> src/naive_hash_index/naive_mvht.rs:25:8
[INFO] [stdout]    |
[INFO] [stdout] 25 | struct KeyAndValue {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/access_method/append_only_store/mod.rs:143:19
[INFO] [stdout]     |
[INFO] [stdout] 143 |     fn write_page(&self, page_key: &PageFrameKey) -> FrameWriteGuard {
[INFO] [stdout]     |                   ^^^^^ the lifetime is elided here  ^^^^^^^^^^^^^^^ the same lifetime is hidden 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] 143 |     fn write_page(&self, page_key: &PageFrameKey) -> FrameWriteGuard<'_> {
[INFO] [stdout]     |                                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/access_method/chain/read_optimized_chain.rs:53:18
[INFO] [stdout]    |
[INFO] [stdout] 53 |     fn read_page(&self, page_key: PageFrameKey) -> FrameReadGuard {
[INFO] [stdout]    |                  ^^^^^ the lifetime is elided here ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 53 |     fn read_page(&self, page_key: PageFrameKey) -> FrameReadGuard<'_> {
[INFO] [stdout]    |                                                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/access_method/chain/read_optimized_chain.rs:90:19
[INFO] [stdout]    |
[INFO] [stdout] 90 |     fn first_page(&self) -> FrameReadGuard {
[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] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 90 |     fn first_page(&self) -> FrameReadGuard<'_> {
[INFO] [stdout]    |                                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/access_method/chain/read_optimized_chain.rs:138:9
[INFO] [stdout]     |
[INFO] [stdout] 138 |         &self,
[INFO] [stdout]     |         ^^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 141 |     ) -> Result<FrameWriteGuard, AccessMethodError> {
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 141 |     ) -> Result<FrameWriteGuard<'_>, AccessMethodError> {
[INFO] [stdout]     |                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/access_method/chain/read_optimized_chain.rs:170:9
[INFO] [stdout]     |
[INFO] [stdout] 170 |         &self,
[INFO] [stdout]     |         ^^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 173 |     ) -> Result<FrameWriteGuard, AccessMethodError> {
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 173 |     ) -> Result<FrameWriteGuard<'_>, AccessMethodError> {
[INFO] [stdout]     |                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/access_method/chain/read_optimized_chain.rs:254:9
[INFO] [stdout]     |
[INFO] [stdout] 254 |         &self,
[INFO] [stdout]     |         ^^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 258 |     ) -> Result<FrameWriteGuard, AccessMethodError> {
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 258 |     ) -> Result<FrameWriteGuard<'_>, AccessMethodError> {
[INFO] [stdout]     |                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/access_method/chain/read_optimized_chain.rs:293:9
[INFO] [stdout]     |
[INFO] [stdout] 293 |         &self,
[INFO] [stdout]     |         ^^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 297 |     ) -> Result<FrameWriteGuard, AccessMethodError> {
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 297 |     ) -> Result<FrameWriteGuard<'_>, AccessMethodError> {
[INFO] [stdout]     |                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/access_method/chain/read_optimized_chain.rs:354:9
[INFO] [stdout]     |
[INFO] [stdout] 354 |         &self,
[INFO] [stdout]     |         ^^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 358 |     ) -> Result<FrameWriteGuard, AccessMethodError> {
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 358 |     ) -> Result<FrameWriteGuard<'_>, AccessMethodError> {
[INFO] [stdout]     |                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/access_method/chain/read_optimized_chain.rs:393:9
[INFO] [stdout]     |
[INFO] [stdout] 393 |         &self,
[INFO] [stdout]     |         ^^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 397 |     ) -> Result<FrameWriteGuard, AccessMethodError> {
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 397 |     ) -> Result<FrameWriteGuard<'_>, AccessMethodError> {
[INFO] [stdout]     |                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/access_method/fbt/foster_btree.rs:1446:22
[INFO] [stdout]      |
[INFO] [stdout] 1446 |     fn allocate_page(&self) -> FrameWriteGuard {
[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] help: use `'_` for type paths
[INFO] [stdout]      |
[INFO] [stdout] 1446 |     fn allocate_page(&self) -> FrameWriteGuard<'_> {
[INFO] [stdout]      |                                               ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/access_method/fbt/foster_btree.rs:1473:18
[INFO] [stdout]      |
[INFO] [stdout] 1473 |     fn read_page(&self, page_key: PageFrameKey) -> FrameReadGuard {
[INFO] [stdout]      |                  ^^^^^ the lifetime is elided here ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]      |
[INFO] [stdout]      = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]      |
[INFO] [stdout] 1473 |     fn read_page(&self, page_key: PageFrameKey) -> FrameReadGuard<'_> {
[INFO] [stdout]      |                                                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/access_method/fbt/foster_btree.rs:1707:9
[INFO] [stdout]      |
[INFO] [stdout] 1707 |         &self,
[INFO] [stdout]      |         ^^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 1710 |     ) -> FrameReadGuard {
[INFO] [stdout]      |          ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]      |
[INFO] [stdout]      = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]      |
[INFO] [stdout] 1710 |     ) -> FrameReadGuard<'_> {
[INFO] [stdout]      |                        ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/access_method/fbt/foster_btree.rs:1736:38
[INFO] [stdout]      |
[INFO] [stdout] 1736 |     pub fn traverse_to_leaf_for_read(&self, key: &[u8]) -> FrameReadGuard {
[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] help: use `'_` for type paths
[INFO] [stdout]      |
[INFO] [stdout] 1736 |     pub fn traverse_to_leaf_for_read(&self, key: &[u8]) -> FrameReadGuard<'_> {
[INFO] [stdout]      |                                                                          ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/access_method/fbt/foster_btree.rs:1741:9
[INFO] [stdout]      |
[INFO] [stdout] 1741 |         &self,
[INFO] [stdout]      |         ^^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 1744 |     ) -> FrameReadGuard {
[INFO] [stdout]      |          ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]      |
[INFO] [stdout]      = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]      |
[INFO] [stdout] 1744 |     ) -> FrameReadGuard<'_> {
[INFO] [stdout]      |                        ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/access_method/fbt/foster_btree.rs:1848:9
[INFO] [stdout]      |
[INFO] [stdout] 1848 |         &self,
[INFO] [stdout]      |         ^^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 1851 |     ) -> FrameWriteGuard {
[INFO] [stdout]      |          ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]      |
[INFO] [stdout]      = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]      |
[INFO] [stdout] 1851 |     ) -> FrameWriteGuard<'_> {
[INFO] [stdout]      |                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/access_method/fbt/foster_btree.rs:1899:9
[INFO] [stdout]      |
[INFO] [stdout] 1899 |         &self,
[INFO] [stdout]      |         ^^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 1902 |     ) -> Result<FrameWriteGuard, AccessMethodError> {
[INFO] [stdout]      |                 ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]      |
[INFO] [stdout]      = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]      |
[INFO] [stdout] 1902 |     ) -> Result<FrameWriteGuard<'_>, AccessMethodError> {
[INFO] [stdout]      |                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/access_method/fbt/foster_btree.rs:1918:9
[INFO] [stdout]      |
[INFO] [stdout] 1918 |         &self,
[INFO] [stdout]      |         ^^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 1921 |     ) -> FrameWriteGuard {
[INFO] [stdout]      |          ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]      |
[INFO] [stdout]      = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]      |
[INFO] [stdout] 1921 |     ) -> FrameWriteGuard<'_> {
[INFO] [stdout]      |                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/access_method/fbt/foster_btree.rs:1950:35
[INFO] [stdout]      |
[INFO] [stdout] 1950 |     fn traverse_to_leaf_for_write(&self, key: &[u8]) -> FrameWriteGuard {
[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] help: use `'_` for type paths
[INFO] [stdout]      |
[INFO] [stdout] 1950 |     fn traverse_to_leaf_for_write(&self, key: &[u8]) -> FrameWriteGuard<'_> {
[INFO] [stdout]      |                                                                        ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/access_method/fbt/foster_btree.rs:2349:14
[INFO] [stdout]      |
[INFO] [stdout] 2349 |     fn l_key(&self) -> BTreeKey {
[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] help: use `'_` for type paths
[INFO] [stdout]      |
[INFO] [stdout] 2349 |     fn l_key(&self) -> BTreeKey<'_> {
[INFO] [stdout]      |                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/access_method/fbt/foster_btree.rs:2357:14
[INFO] [stdout]      |
[INFO] [stdout] 2357 |     fn r_key(&self) -> BTreeKey {
[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] help: use `'_` for type paths
[INFO] [stdout]      |
[INFO] [stdout] 2357 |     fn r_key(&self) -> BTreeKey<'_> {
[INFO] [stdout]      |                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/access_method/fbt/foster_btree.rs:2365:27
[INFO] [stdout]      |
[INFO] [stdout] 2365 |     fn current_high_fence(&self) -> BTreeKey {
[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] help: use `'_` for type paths
[INFO] [stdout]      |
[INFO] [stdout] 2365 |     fn current_high_fence(&self) -> BTreeKey<'_> {
[INFO] [stdout]      |                                             ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/access_method/fbt/foster_btree.rs:2651:9
[INFO] [stdout]      |
[INFO] [stdout] 2651 |         &self,
[INFO] [stdout]      |         ^^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 2654 |     ) -> FrameReadGuard {
[INFO] [stdout]      |          ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]      |
[INFO] [stdout]      = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]      |
[INFO] [stdout] 2654 |     ) -> FrameReadGuard<'_> {
[INFO] [stdout]      |                        ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/access_method/fbt/foster_btree.rs:2662:9
[INFO] [stdout]      |
[INFO] [stdout] 2662 |         &self,
[INFO] [stdout]      |         ^^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 2665 |     ) -> FrameWriteGuard {
[INFO] [stdout]      |          ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]      |
[INFO] [stdout]      = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]      |
[INFO] [stdout] 2665 |     ) -> FrameWriteGuard<'_> {
[INFO] [stdout]      |                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/access_method/fbt/foster_btree_page.rs:233:22
[INFO] [stdout]     |
[INFO] [stdout] 233 |     fn get_low_fence(&self) -> BTreeKey;
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 233 |     fn get_low_fence(&self) -> BTreeKey<'_>;
[INFO] [stdout]     |                                        ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/access_method/fbt/foster_btree_page.rs:234:23
[INFO] [stdout]     |
[INFO] [stdout] 234 |     fn get_high_fence(&self) -> BTreeKey;
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 234 |     fn get_high_fence(&self) -> BTreeKey<'_>;
[INFO] [stdout]     |                                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/access_method/fbt/foster_btree_page.rs:235:14
[INFO] [stdout]     |
[INFO] [stdout] 235 |     fn range(&self) -> (BTreeKey, BTreeKey);
[INFO] [stdout]     |              ^^^^^      ^^^^^^^^  ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |              |          |
[INFO] [stdout]     |              |          the same lifetime is hidden here
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 235 |     fn range(&self) -> (BTreeKey<'_>, BTreeKey<'_>);
[INFO] [stdout]     |                                 ++++          ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/access_method/fbt/foster_btree_page.rs:277:22
[INFO] [stdout]     |
[INFO] [stdout] 277 |     fn get_btree_key(&self, slot_id: u32) -> BTreeKey;
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 277 |     fn get_btree_key(&self, slot_id: u32) -> BTreeKey<'_>;
[INFO] [stdout]     |                                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/access_method/fbt/foster_btree_page.rs:613:22
[INFO] [stdout]     |
[INFO] [stdout] 613 |     fn get_low_fence(&self) -> BTreeKey {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 613 |     fn get_low_fence(&self) -> BTreeKey<'_> {
[INFO] [stdout]     |                                        ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/access_method/fbt/foster_btree_page.rs:624:23
[INFO] [stdout]     |
[INFO] [stdout] 624 |     fn get_high_fence(&self) -> BTreeKey {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 624 |     fn get_high_fence(&self) -> BTreeKey<'_> {
[INFO] [stdout]     |                                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/access_method/fbt/foster_btree_page.rs:635:14
[INFO] [stdout]     |
[INFO] [stdout] 635 |     fn range(&self) -> (BTreeKey, BTreeKey) {
[INFO] [stdout]     |              ^^^^^      ^^^^^^^^  ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |              |          |
[INFO] [stdout]     |              |          the same lifetime is hidden here
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 635 |     fn range(&self) -> (BTreeKey<'_>, BTreeKey<'_>) {
[INFO] [stdout]     |                                 ++++          ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/access_method/fbt/foster_btree_page.rs:757:22
[INFO] [stdout]     |
[INFO] [stdout] 757 |     fn get_btree_key(&self, slot_id: u32) -> BTreeKey {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 757 |     fn get_btree_key(&self, slot_id: u32) -> BTreeKey<'_> {
[INFO] [stdout]     |                                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/access_method/hashindex/pagedhashmap.rs:170:9
[INFO] [stdout]     |
[INFO] [stdout] 170 |         &self,
[INFO] [stdout]     |         ^^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 173 |     ) -> Result<FrameWriteGuard, AccessMethodError> {
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 173 |     ) -> Result<FrameWriteGuard<'_>, AccessMethodError> {
[INFO] [stdout]     |                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/access_method/hashindex/pagedhashmap.rs:197:9
[INFO] [stdout]     |
[INFO] [stdout] 197 |         &self,
[INFO] [stdout]     |         ^^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 200 |     ) -> Result<FrameWriteGuard, AccessMethodError> {
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 200 |     ) -> Result<FrameWriteGuard<'_>, AccessMethodError> {
[INFO] [stdout]     |                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/access_method/hashindex/pagedhashmap.rs:237:18
[INFO] [stdout]     |
[INFO] [stdout] 237 |     fn read_page(&self, page_key: PageFrameKey) -> FrameReadGuard {
[INFO] [stdout]     |                  ^^^^^ the lifetime is elided here ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 237 |     fn read_page(&self, page_key: PageFrameKey) -> FrameReadGuard<'_> {
[INFO] [stdout]     |                                                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/access_method/hashindex/pagedhashmap.rs:263:19
[INFO] [stdout]     |
[INFO] [stdout] 263 |     fn write_page(&self, page_key: PageFrameKey) -> FrameWriteGuard {
[INFO] [stdout]     |                   ^^^^^ the lifetime is elided here ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 263 |     fn write_page(&self, page_key: PageFrameKey) -> FrameWriteGuard<'_> {
[INFO] [stdout]     |                                                                    ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/access_method/hashindex/pagedhashmap.rs:339:9
[INFO] [stdout]     |
[INFO] [stdout] 339 |         &self,
[INFO] [stdout]     |         ^^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 342 |     ) -> Result<(FrameWriteGuard, u16), AccessMethodError> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 342 |     ) -> Result<(FrameWriteGuard<'_>, u16), AccessMethodError> {
[INFO] [stdout]     |                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/access_method/hashindex/pagedhashmap.rs:366:9
[INFO] [stdout]     |
[INFO] [stdout] 366 |         &self,
[INFO] [stdout]     |         ^^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 369 |     ) -> Result<(FrameWriteGuard, u16), AccessMethodError> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 369 |     ) -> Result<(FrameWriteGuard<'_>, u16), AccessMethodError> {
[INFO] [stdout]     |                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/bp/buffer_frame.rs:47:17
[INFO] [stdout]    |
[INFO] [stdout] 47 |     pub fn read(&self) -> FrameReadGuard {
[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] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 47 |     pub fn read(&self) -> FrameReadGuard<'_> {
[INFO] [stdout]    |                                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/bp/buffer_frame.rs:55:21
[INFO] [stdout]    |
[INFO] [stdout] 55 |     pub fn try_read(&self) -> Option<FrameReadGuard> {
[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] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 55 |     pub fn try_read(&self) -> Option<FrameReadGuard<'_>> {
[INFO] [stdout]    |                                                    ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/bp/buffer_frame.rs:66:18
[INFO] [stdout]    |
[INFO] [stdout] 66 |     pub fn write(&self, make_dirty: bool) -> FrameWriteGuard {
[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] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 66 |     pub fn write(&self, make_dirty: bool) -> FrameWriteGuard<'_> {
[INFO] [stdout]    |                                                             ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/bp/buffer_frame.rs:77:22
[INFO] [stdout]    |
[INFO] [stdout] 77 |     pub fn try_write(&self, make_dirty: bool) -> Option<FrameWriteGuard> {
[INFO] [stdout]    |                      ^^^^^ the lifetime is elided here  ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 77 |     pub fn try_write(&self, make_dirty: bool) -> Option<FrameWriteGuard<'_>> {
[INFO] [stdout]    |                                                                        ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/bp/buffer_pool.rs:294:26
[INFO] [stdout]     |
[INFO] [stdout] 294 |     pub fn choose_victim(&mut self) -> Option<FrameWriteGuard> {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 294 |     pub fn choose_victim(&mut self) -> Option<FrameWriteGuard<'_>> {
[INFO] [stdout]     |                                                              ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/bp/buffer_pool.rs:516:22
[INFO] [stdout]     |
[INFO] [stdout] 516 |     fn choose_victim(&self) -> Option<FrameWriteGuard> {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 516 |     fn choose_victim(&self) -> Option<FrameWriteGuard<'_>> {
[INFO] [stdout]     |                                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/bp/buffer_pool.rs:589:9
[INFO] [stdout]     |
[INFO] [stdout] 589 |         &self,
[INFO] [stdout]     |         ^^^^^ the lifetime is elided here
[INFO] [stdout] 590 |         c_key: ContainerKey,
[INFO] [stdout] 591 |     ) -> Result<FrameWriteGuard, MemPoolStatus> {
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 591 |     ) -> Result<FrameWriteGuard<'_>, MemPoolStatus> {
[INFO] [stdout]     |                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/bp/buffer_pool.rs:625:27
[INFO] [stdout]     |
[INFO] [stdout] 625 |     fn get_page_for_write(&self, key: PageFrameKey) -> Result<FrameWriteGuard, MemPoolStatus> {
[INFO] [stdout]     |                           ^^^^^ the lifetime is elided here   ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 625 |     fn get_page_for_write(&self, key: PageFrameKey) -> Result<FrameWriteGuard<'_>, MemPoolStatus> {
[INFO] [stdout]     |                                                                              ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/bp/buffer_pool.rs:741:26
[INFO] [stdout]     |
[INFO] [stdout] 741 |     fn get_page_for_read(&self, key: PageFrameKey) -> Result<FrameReadGuard, MemPoolStatus> {
[INFO] [stdout]     |                          ^^^^^ the lifetime is elided here   ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 741 |     fn get_page_for_read(&self, key: PageFrameKey) -> Result<FrameReadGuard<'_>, MemPoolStatus> {
[INFO] [stdout]     |                                                                            ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/bp/in_mem_pool.rs:62:9
[INFO] [stdout]    |
[INFO] [stdout] 62 |         &self,
[INFO] [stdout]    |         ^^^^^ the lifetime is elided here
[INFO] [stdout] 63 |         c_key: ContainerKey,
[INFO] [stdout] 64 |     ) -> Result<FrameWriteGuard, MemPoolStatus> {
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 64 |     ) -> Result<FrameWriteGuard<'_>, MemPoolStatus> {
[INFO] [stdout]    |                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/bp/in_mem_pool.rs:96:27
[INFO] [stdout]    |
[INFO] [stdout] 96 |     fn get_page_for_write(&self, key: PageFrameKey) -> Result<FrameWriteGuard, MemPoolStatus> {
[INFO] [stdout]    |                           ^^^^^ the lifetime is elided here   ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 96 |     fn get_page_for_write(&self, key: PageFrameKey) -> Result<FrameWriteGuard<'_>, MemPoolStatus> {
[INFO] [stdout]    |                                                                              ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/bp/in_mem_pool.rs:117:26
[INFO] [stdout]     |
[INFO] [stdout] 117 |     fn get_page_for_read(&self, key: PageFrameKey) -> Result<FrameReadGuard, MemPoolStatus> {
[INFO] [stdout]     |                          ^^^^^ the lifetime is elided here   ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 117 |     fn get_page_for_read(&self, key: PageFrameKey) -> Result<FrameReadGuard<'_>, MemPoolStatus> {
[INFO] [stdout]     |                                                                            ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/bp/mem_pool_trait.rs:179:9
[INFO] [stdout]     |
[INFO] [stdout] 179 |         &self,
[INFO] [stdout]     |         ^^^^^ the lifetime is elided here
[INFO] [stdout] 180 |         c_key: ContainerKey,
[INFO] [stdout] 181 |     ) -> Result<FrameWriteGuard, MemPoolStatus>;
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 181 |     ) -> Result<FrameWriteGuard<'_>, MemPoolStatus>;
[INFO] [stdout]     |                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/bp/mem_pool_trait.rs:186:27
[INFO] [stdout]     |
[INFO] [stdout] 186 |     fn get_page_for_write(&self, key: PageFrameKey) -> Result<FrameWriteGuard, MemPoolStatus>;
[INFO] [stdout]     |                           ^^^^^ the lifetime is elided here   ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 186 |     fn get_page_for_write(&self, key: PageFrameKey) -> Result<FrameWriteGuard<'_>, MemPoolStatus>;
[INFO] [stdout]     |                                                                              ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/bp/mem_pool_trait.rs:191:26
[INFO] [stdout]     |
[INFO] [stdout] 191 |     fn get_page_for_read(&self, key: PageFrameKey) -> Result<FrameReadGuard, MemPoolStatus>;
[INFO] [stdout]     |                          ^^^^^ the lifetime is elided here   ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 191 |     fn get_page_for_read(&self, key: PageFrameKey) -> Result<FrameReadGuard<'_>, MemPoolStatus>;
[INFO] [stdout]     |                                                                            ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]   --> src/mvcc_index/dual_heap_hash/mod.rs:21:14
[INFO] [stdout]    |
[INFO] [stdout] 21 |     unsafe { PARAMS.get().as_ref().unwrap().clone().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]    = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/mvcc_index/dual_heap_hash/chained_hash_table.rs:150:13
[INFO] [stdout]     |
[INFO] [stdout] 150 |             bucket.scan_into_vec(ts, results);
[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] 150 |             let _ = bucket.scan_into_vec(ts, results);
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/mvcc_index/hash_common.rs:104:41
[INFO] [stdout]     |
[INFO] [stdout] 104 | pub fn write_page<T: MemPool>(mem_pool: &T, page_key: PageFrameKey) -> FrameWriteGuard {
[INFO] [stdout]     |                                         ^^ the lifetime is elided here ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 104 | pub fn write_page<T: MemPool>(mem_pool: &T, page_key: PageFrameKey) -> FrameWriteGuard<'_> {
[INFO] [stdout]     |                                                                                       ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/mvcc_index/hash_common.rs:126:15
[INFO] [stdout]     |
[INFO] [stdout] 126 |     mem_pool: &T,
[INFO] [stdout]     |               ^^ the lifetime is elided here
[INFO] [stdout] 127 |     page_key: PageFrameKey,
[INFO] [stdout] 128 | ) -> Option<FrameWriteGuard> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 128 | ) -> Option<FrameWriteGuard<'_>> {
[INFO] [stdout]     |                            ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/mvcc_index/hash_common.rs:145:50
[INFO] [stdout]     |
[INFO] [stdout] 145 | pub fn read_page<T: MemPool + 'static>(mem_pool: &T, page_key: PageFrameKey) -> FrameReadGuard {
[INFO] [stdout]     |                                                  ^^ the lifetime is elided here ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 145 | pub fn read_page<T: MemPool + 'static>(mem_pool: &T, page_key: PageFrameKey) -> FrameReadGuard<'_> {
[INFO] [stdout]     |                                                                                               ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/mvcc_index/hash_common.rs:166:15
[INFO] [stdout]     |
[INFO] [stdout] 166 |     mem_pool: &T,
[INFO] [stdout]     |               ^^ the lifetime is elided here
[INFO] [stdout] 167 |     page_key: PageFrameKey,
[INFO] [stdout] 168 | ) -> Option<FrameReadGuard> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 168 | ) -> Option<FrameReadGuard<'_>> {
[INFO] [stdout]     |                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/mvcc_index/hash_join_page.rs:674:31
[INFO] [stdout]     |
[INFO] [stdout] 674 |     fn record_ref_from_slotid(&self, slot_id: usize) -> RecordRef {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 674 |     fn record_ref_from_slotid(&self, slot_id: usize) -> RecordRef<'_> {
[INFO] [stdout]     |                                                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/mvcc_index/hash_join_page.rs:679:29
[INFO] [stdout]     |
[INFO] [stdout] 679 |     fn record_ref_from_slot(&self, slot: &Slot) -> RecordRef {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 679 |     fn record_ref_from_slot(&self, slot: &Slot) -> RecordRef<'_> {
[INFO] [stdout]     |                                                             ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/mvcc_index/hash_join_page.rs:707:26
[INFO] [stdout]     |
[INFO] [stdout] 707 |     fn slot_pkey_matches(&self, slot: &Slot, pkey: &[u8]) -> Option<RecordRef>;
[INFO] [stdout]     |                          ^^^^^ the lifetime is elided here          ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 707 |     fn slot_pkey_matches(&self, slot: &Slot, pkey: &[u8]) -> Option<RecordRef<'_>>;
[INFO] [stdout]     |                                                                              ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> src/mvcc_index/hash_join_page.rs:1514:26
[INFO] [stdout]      |
[INFO] [stdout] 1514 |     fn slot_pkey_matches(&self, slot: &Slot, pkey: &[u8]) -> Option<RecordRef> {
[INFO] [stdout]      |                          ^^^^^ the lifetime is elided here          ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]      |
[INFO] [stdout]      = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]      |
[INFO] [stdout] 1514 |     fn slot_pkey_matches(&self, slot: &Slot, pkey: &[u8]) -> Option<RecordRef<'_>> {
[INFO] [stdout]      |                                                                              ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/mvcc_index/hash_join_heap_chain.rs:223:9
[INFO] [stdout]     |
[INFO] [stdout] 223 |         &self,
[INFO] [stdout]     |         ^^^^^ the lifetime is elided here
[INFO] [stdout] 224 |         page_key: PageFrameKey,
[INFO] [stdout] 225 |     ) -> Result<FrameWriteGuard, AccessMethodError> {
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 225 |     ) -> Result<FrameWriteGuard<'_>, AccessMethodError> {
[INFO] [stdout]     |                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/mvcc_index/hash_join_heap_chain.rs:251:9
[INFO] [stdout]     |
[INFO] [stdout] 251 |         &self,
[INFO] [stdout]     |         ^^^^^ the lifetime is elided here
[INFO] [stdout] 252 |         page_key: PageFrameKey,
[INFO] [stdout] 253 |     ) -> Result<FrameWriteGuard, AccessMethodError> {
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 253 |     ) -> Result<FrameWriteGuard<'_>, AccessMethodError> {
[INFO] [stdout]     |                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/mvcc_index/hash_join_heap_chain.rs:848:19
[INFO] [stdout]     |
[INFO] [stdout] 848 |     fn first_page(&self) -> FrameReadGuard {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 848 |     fn first_page(&self) -> FrameReadGuard<'_> {
[INFO] [stdout]     |                                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/mvcc_index/hash_join_heap_chain.rs:863:25
[INFO] [stdout]     |
[INFO] [stdout] 863 |     fn first_page_write(&self) -> FrameWriteGuard {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 863 |     fn first_page_write(&self) -> FrameWriteGuard<'_> {
[INFO] [stdout]     |                                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/mvcc_index/hash_join_heap_chain.rs:878:27
[INFO] [stdout]     |
[INFO] [stdout] 878 |     pub fn scan_all(self: &Arc<Self>) -> Result<HeapChainScanner<T>, AccessMethodError> {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 878 |     pub fn scan_all(self: &Arc<Self>) -> Result<HeapChainScanner<'_, T>, AccessMethodError> {
[INFO] [stdout]     |                                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/txn_storage/ondisk_2pl/mod.rs:204:17
[INFO] [stdout]     |
[INFO] [stdout] 204 |     pub fn iter(&self) -> std::collections::hash_map::Iter<Vec<u8>, RWEntry> {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 204 |     pub fn iter(&self) -> std::collections::hash_map::Iter<'_, Vec<u8>, RWEntry> {
[INFO] [stdout]     |                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/naive_hash_index/naive_hash_table/hash_join_chain.rs:186:9
[INFO] [stdout]     |
[INFO] [stdout] 186 |         &self,
[INFO] [stdout]     |         ^^^^^ the lifetime is elided here
[INFO] [stdout] 187 |         page_key: PageFrameKey,
[INFO] [stdout] 188 |     ) -> Result<FrameWriteGuard, AccessMethodError> {
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 188 |     ) -> Result<FrameWriteGuard<'_>, AccessMethodError> {
[INFO] [stdout]     |                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/naive_hash_index/naive_hash_table/hash_join_chain.rs:214:9
[INFO] [stdout]     |
[INFO] [stdout] 214 |         &self,
[INFO] [stdout]     |         ^^^^^ the lifetime is elided here
[INFO] [stdout] 215 |         page_key: PageFrameKey,
[INFO] [stdout] 216 |     ) -> Result<FrameWriteGuard, AccessMethodError> {
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 216 |     ) -> Result<FrameWriteGuard<'_>, AccessMethodError> {
[INFO] [stdout]     |                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/naive_hash_index/naive_hash_table/hash_join_chain.rs:293:19
[INFO] [stdout]     |
[INFO] [stdout] 293 |     fn first_page(&self) -> FrameReadGuard {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 293 |     fn first_page(&self) -> FrameReadGuard<'_> {
[INFO] [stdout]     |                                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/naive_hash_index/naive_hash_table/hash_join_chain.rs:308:25
[INFO] [stdout]     |
[INFO] [stdout] 308 |     fn first_page_write(&self) -> FrameWriteGuard {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 308 |     fn first_page_write(&self) -> FrameWriteGuard<'_> {
[INFO] [stdout]     |                                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/naive_hash_index/naive_hash_table/hash_join_page.rs:341:31
[INFO] [stdout]     |
[INFO] [stdout] 341 |     fn record_ref_from_slotid(&self, slot_id: usize) -> RecordRef {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 341 |     fn record_ref_from_slotid(&self, slot_id: usize) -> RecordRef<'_> {
[INFO] [stdout]     |                                                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/naive_hash_index/naive_hash_table/hash_join_page.rs:346:29
[INFO] [stdout]     |
[INFO] [stdout] 346 |     fn record_ref_from_slot(&self, slot: &Slot) -> RecordRef {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 346 |     fn record_ref_from_slot(&self, slot: &Slot) -> RecordRef<'_> {
[INFO] [stdout]     |                                                             ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/naive_hash_index/naive_hash_table/hash_join_page.rs:374:26
[INFO] [stdout]     |
[INFO] [stdout] 374 |     fn slot_pkey_matches(&self, slot: &Slot, pkey: &[u8]) -> Option<RecordRef>;
[INFO] [stdout]     |                          ^^^^^ the lifetime is elided here          ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 374 |     fn slot_pkey_matches(&self, slot: &Slot, pkey: &[u8]) -> Option<RecordRef<'_>>;
[INFO] [stdout]     |                                                                              ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/naive_hash_index/naive_hash_table/hash_join_page.rs:541:26
[INFO] [stdout]     |
[INFO] [stdout] 541 |     fn slot_pkey_matches(&self, slot: &Slot, pkey: &[u8]) -> Option<RecordRef> {
[INFO] [stdout]     |                          ^^^^^ the lifetime is elided here          ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 541 |     fn slot_pkey_matches(&self, slot: &Slot, pkey: &[u8]) -> Option<RecordRef<'_>> {
[INFO] [stdout]     |                                                                              ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `MvccEntry`
[INFO] [stdout]   --> benches/hash_join/bench_join_simulation_repair/join_simulation_repair.rs:22:62
[INFO] [stdout]    |
[INFO] [stdout] 22 | use fbtree::mvcc_index::{BoxMvccIndexMemPool, HashTableType, MvccEntry, MvccIndex};
[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: `rand::seq::SliceRandom`
[INFO] [stdout]   --> benches/hash_join/bench_join_simulation_repair/join_simulation_repair.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 | use rand::seq::SliceRandom;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]   --> benches/hash_join/bench_join_simulation_repair/join_simulation_repair.rs:27:24
[INFO] [stdout]    |
[INFO] [stdout] 27 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]    |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]   --> benches/hash_join/bench_join_simulation_repair/join_simulation_repair.rs:30:15
[INFO] [stdout]    |
[INFO] [stdout] 30 | use std::fs::{self, File};
[INFO] [stdout]    |               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BufRead` and `BufReader`
[INFO] [stdout]   --> benches/hash_join/bench_join_simulation_repair/join_simulation_repair.rs:31:21
[INFO] [stdout]    |
[INFO] [stdout] 31 | use std::io::{self, BufRead, BufReader};
[INFO] [stdout]    |                     ^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]   --> benches/hash_join/bench_join_simulation_repair/join_simulation_repair.rs:33:5
[INFO] [stdout]    |
[INFO] [stdout] 33 | use std::sync::Arc;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rand::rngs::SmallRng`
[INFO] [stdout]   --> benches/hash_join/bench_join_simulation_repair/join_simulation_repair.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 36 | use rand::rngs::SmallRng;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Rng` and `SeedableRng`
[INFO] [stdout]   --> benches/hash_join/bench_join_simulation_repair/join_simulation_repair.rs:37:12
[INFO] [stdout]    |
[INFO] [stdout] 37 | use rand::{Rng, SeedableRng};
[INFO] [stdout]    |            ^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `show_table_stats`
[INFO] [stdout]  --> src/bin/tpcc.rs:7:52
[INFO] [stdout]   |
[INFO] [stdout] 7 |         load_all_tables, run_benchmark_for_thread, show_table_stats, DeliveryTxn, NewOrderTxn,
[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: `AtomicPtr`, `AtomicUsize`, `HashMap`, `default`, and `iter::Scan`
[INFO] [stdout]  --> benches/hash_join/htap_simulation/txs.rs:2:19
[INFO] [stdout]   |
[INFO] [stdout] 2 |     collections::{HashMap, HashSet},
[INFO] [stdout]   |                   ^^^^^^^
[INFO] [stdout] 3 |     default,
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout] 4 |     iter::Scan,
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 5 |     sync::atomic::{AtomicPtr, AtomicUsize},
[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: `StdRng`
[INFO] [stdout]   --> benches/hash_join/htap_simulation/txs.rs:12:22
[INFO] [stdout]    |
[INFO] [stdout] 12 |     rngs::{SmallRng, StdRng},
[INFO] [stdout]    |                      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> benches/hash_join/htap_simulation/txs.rs:641:12
[INFO] [stdout]     |
[INFO] [stdout] 641 |         if ((*self.cli.analytical_ratio.as_ref().unwrap() - 0.0).abs() > 1e-6)
[INFO] [stdout]     |            ^                                                                 ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 641 -         if ((*self.cli.analytical_ratio.as_ref().unwrap() - 0.0).abs() > 1e-6)
[INFO] [stdout] 641 +         if (*self.cli.analytical_ratio.as_ref().unwrap() - 0.0).abs() > 1e-6 
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> benches/hash_join/htap_simulation/txs.rs:661:16
[INFO] [stdout]     |
[INFO] [stdout] 661 |             if ((*self.cli.analytical_ratio.as_ref().unwrap() - 0.0).abs() > 1e-6)
[INFO] [stdout]     |                ^                                                                 ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 661 -             if ((*self.cli.analytical_ratio.as_ref().unwrap() - 0.0).abs() > 1e-6)
[INFO] [stdout] 661 +             if (*self.cli.analytical_ratio.as_ref().unwrap() - 0.0).abs() > 1e-6 
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `core::num`
[INFO] [stdout]  --> benches/hash_join/htap_simulation/bench.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use core::num;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TableType`
[INFO] [stdout]  --> benches/hash_join/htap_simulation/bench.rs:9:16
[INFO] [stdout]   |
[INFO] [stdout] 9 | use cli::{Cli, TableType};
[INFO] [stdout]   |                ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `dbgen::DataSource`
[INFO] [stdout]   --> benches/hash_join/htap_simulation/bench.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use dbgen::DataSource;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `prelude::Timestamp`
[INFO] [stdout]   --> benches/hash_join/htap_simulation/bench.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 |     prelude::Timestamp,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `access_method::UniqueKeyIndex`
[INFO] [stdout]  --> src/bin/aps_scan_latency.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 |     access_method::UniqueKeyIndex,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `from_key_bytes` is never used
[INFO] [stdout]   --> src/bin/aps_scan_latency.rs:41:4
[INFO] [stdout]    |
[INFO] [stdout] 41 | fn from_key_bytes(key: &[u8]) -> usize {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_key` is never used
[INFO] [stdout]   --> src/bin/aps_scan_latency.rs:51:4
[INFO] [stdout]    |
[INFO] [stdout] 51 | fn get_key(num_keys: usize, skew_factor: f64) -> usize {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_new_value` is never used
[INFO] [stdout]   --> src/bin/aps_scan_latency.rs:62:4
[INFO] [stdout]    |
[INFO] [stdout] 62 | fn get_new_value(value_size: usize) -> Vec<u8> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `access_method::prelude`
[INFO] [stdout]  --> src/bin/ycsb.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 |     access_method::prelude::*,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TableRow` is never constructed
[INFO] [stdout]   --> benches/hash_join/bench_join_simulation_repair/join_simulation_repair.rs:49:8
[INFO] [stdout]    |
[INFO] [stdout] 49 | struct TableRow {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ExpectedRow` is never constructed
[INFO] [stdout]   --> benches/hash_join/bench_join_simulation_repair/join_simulation_repair.rs:66:8
[INFO] [stdout]    |
[INFO] [stdout] 66 | struct ExpectedRow {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ExpectedUpdateRow` is never constructed
[INFO] [stdout]   --> benches/hash_join/bench_join_simulation_repair/join_simulation_repair.rs:73:8
[INFO] [stdout]    |
[INFO] [stdout] 73 | struct ExpectedUpdateRow {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `decode_expected_value` is never used
[INFO] [stdout]    --> benches/hash_join/bench_join_simulation_repair/join_simulation_repair.rs:117:4
[INFO] [stdout]     |
[INFO] [stdout] 117 | fn decode_expected_value(value_str: &str) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `from_key_bytes` is never used
[INFO] [stdout]   --> src/bin/ycsb.rs:95:4
[INFO] [stdout]    |
[INFO] [stdout] 95 | fn from_key_bytes(key: &[u8]) -> usize {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `from_key_bytes` is never used
[INFO] [stdout]   --> src/bin/fbt_scan_latency.rs:48:4
[INFO] [stdout]    |
[INFO] [stdout] 48 | fn from_key_bytes(key: &[u8]) -> usize {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_key` is never used
[INFO] [stdout]   --> src/bin/fbt_scan_latency.rs:58:4
[INFO] [stdout]    |
[INFO] [stdout] 58 | fn get_key(num_keys: usize, skew_factor: f64) -> usize {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_new_value` is never used
[INFO] [stdout]   --> src/bin/fbt_scan_latency.rs:69:4
[INFO] [stdout]    |
[INFO] [stdout] 69 | fn get_new_value(value_size: usize) -> Vec<u8> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `offset` is never read
[INFO] [stdout]    --> benches/hash_join/htap_simulation/dbgen.rs:137:9
[INFO] [stdout]     |
[INFO] [stdout] 137 |         offset += 4;
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> benches/hash_join/htap_simulation/dbgen.rs:160:13
[INFO] [stdout]     |
[INFO] [stdout] 160 |         let mut rng = SmallRng::seed_from_u64(cli.seed);
[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: `i`
[INFO] [stdout]    --> benches/hash_join/htap_simulation/dbgen.rs:194:13
[INFO] [stdout]     |
[INFO] [stdout] 194 |         for i in 0..length {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `rand` is never read
[INFO] [stdout]    --> benches/hash_join/htap_simulation/dbgen.rs:188:24
[INFO] [stdout]     |
[INFO] [stdout] 188 |         let mut rand = 1_u8;
[INFO] [stdout]     |                        ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> benches/hash_join/htap_simulation/dbgen.rs:219:13
[INFO] [stdout]     |
[INFO] [stdout] 219 |         for i in 0..length {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `rand` is never read
[INFO] [stdout]    --> benches/hash_join/htap_simulation/dbgen.rs:213:24
[INFO] [stdout]     |
[INFO] [stdout] 213 |         let mut rand = 1_u8;
[INFO] [stdout]     |                        ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> benches/hash_join/htap_simulation/dbgen.rs:243:13
[INFO] [stdout]     |
[INFO] [stdout] 243 |         for i in 0..length {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ts`
[INFO] [stdout]   --> benches/hash_join/htap_simulation/interface.rs:89:23
[INFO] [stdout]    |
[INFO] [stdout] 89 |     fn mark_ts(&self, ts: u64) {}
[INFO] [stdout]    |                       ^^ help: if this is intentional, prefix it with an underscore: `_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_read_repair`
[INFO] [stdout]    --> benches/hash_join/htap_simulation/interface.rs:100:9
[INFO] [stdout]     |
[INFO] [stdout] 100 |         is_read_repair: bool,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_read_repair`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ts`
[INFO] [stdout]    --> benches/hash_join/htap_simulation/interface.rs:172:23
[INFO] [stdout]     |
[INFO] [stdout] 172 |     fn mark_ts(&self, ts: u64) {}
[INFO] [stdout]     |                       ^^ help: if this is intentional, prefix it with an underscore: `_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ts`
[INFO] [stdout]    --> benches/hash_join/htap_simulation/interface.rs:173:29
[INFO] [stdout]     |
[INFO] [stdout] 173 |     fn after_mark_ts(&self, ts: u64) {
[INFO] [stdout]     |                             ^^ help: if this is intentional, prefix it with an underscore: `_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ts`
[INFO] [stdout]    --> benches/hash_join/htap_simulation/interface.rs:266:29
[INFO] [stdout]     |
[INFO] [stdout] 266 |     fn after_mark_ts(&self, ts: u64) {
[INFO] [stdout]     |                             ^^ help: if this is intentional, prefix it with an underscore: `_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ts`
[INFO] [stdout]    --> benches/hash_join/htap_simulation/interface.rs:321:29
[INFO] [stdout]     |
[INFO] [stdout] 321 |     fn after_mark_ts(&self, ts: Timestamp) {
[INFO] [stdout]     |                             ^^ help: if this is intentional, prefix it with an underscore: `_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ts`
[INFO] [stdout]    --> benches/hash_join/htap_simulation/interface.rs:337:61
[INFO] [stdout]     |
[INFO] [stdout] 337 |     fn update(&self, key: &[u8], pkey: &[u8], value: &[u8], ts: Timestamp) {
[INFO] [stdout]     |                                                             ^^ help: if this is intentional, prefix it with an underscore: `_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_read_repair`
[INFO] [stdout]    --> benches/hash_join/htap_simulation/interface.rs:349:9
[INFO] [stdout]     |
[INFO] [stdout] 349 |         is_read_repair: bool,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_read_repair`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `optype`
[INFO] [stdout]    --> benches/hash_join/htap_simulation/interface.rs:353:25
[INFO] [stdout]     |
[INFO] [stdout] 353 |     fn begin_txs(&self, optype: OperationType) -> Result<(), AccessMethodError> {
[INFO] [stdout]     |                         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_optype`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `optype`
[INFO] [stdout]    --> benches/hash_join/htap_simulation/interface.rs:356:23
[INFO] [stdout]     |
[INFO] [stdout] 356 |     fn end_txs(&self, optype: OperationType) -> Result<(), AccessMethodError> {
[INFO] [stdout]     |                       ^^^^^^ help: if this is intentional, prefix it with an underscore: `_optype`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_read_repair`
[INFO] [stdout]    --> benches/hash_join/htap_simulation/interface.rs:362:9
[INFO] [stdout]     |
[INFO] [stdout] 362 |         is_read_repair: bool,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_read_repair`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ts`
[INFO] [stdout]    --> benches/hash_join/htap_simulation/interface.rs:367:74
[INFO] [stdout]     |
[INFO] [stdout] 367 |     fn update_write_repair(&self, key: &[u8], pkey: &[u8], value: &[u8], ts: Timestamp) {
[INFO] [stdout]     |                                                                          ^^ help: if this is intentional, prefix it with an underscore: `_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ts`
[INFO] [stdout]    --> benches/hash_join/htap_simulation/interface.rs:370:31
[INFO] [stdout]     |
[INFO] [stdout] 370 |     fn garbage_collect(&self, ts: Timestamp) {}
[INFO] [stdout]     |                               ^^ help: if this is intentional, prefix it with an underscore: `_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> benches/hash_join/htap_simulation/txs.rs:180:16
[INFO] [stdout]     |
[INFO] [stdout] 180 |     pub fn new(mut cli: Cli) -> Self {
[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]    --> benches/hash_join/htap_simulation/txs.rs:352:13
[INFO] [stdout]     |
[INFO] [stdout] 352 |         let mut selected_ts = all_ts.choose_multiple(&mut self.rng, 2);
[INFO] [stdout]     |             ----^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `selected_ts`
[INFO] [stdout]    --> benches/hash_join/htap_simulation/txs.rs:352:13
[INFO] [stdout]     |
[INFO] [stdout] 352 |         let mut selected_ts = all_ts.choose_multiple(&mut self.rng, 2);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_selected_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `RepairType` is never used
[INFO] [stdout]   --> benches/hash_join/htap_simulation/bench.rs:25:6
[INFO] [stdout]    |
[INFO] [stdout] 25 | enum RepairType {
[INFO] [stdout]    |      ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `ops` is never read
[INFO] [stdout]    --> benches/hash_join/htap_simulation/dbgen.rs:155:5
[INFO] [stdout]     |
[INFO] [stdout] 150 | pub struct DataSource {
[INFO] [stdout]     |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 155 |     ops: Vec<TransactionalOp>,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Scan` is never constructed
[INFO] [stdout]   --> benches/hash_join/htap_simulation/interface.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub enum OperationType {
[INFO] [stdout]    |          ------------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 21 |     Scan,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `OperationType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get` is never used
[INFO] [stdout]   --> benches/hash_join/htap_simulation/interface.rs:31:8
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub trait MultiVersionJoinTable {
[INFO] [stdout]    |           --------------------- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 31 |     fn get(&self, key: &[u8], pkey: &[u8], ts: Timestamp) -> Option<Vec<u8>>;
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PKEY_PER_JOIN_KEY` is never used
[INFO] [stdout]   --> benches/hash_join/htap_simulation/txs.rs:24:7
[INFO] [stdout]    |
[INFO] [stdout] 24 | const PKEY_PER_JOIN_KEY: usize = 500;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `JOIN_KEY_PER_BUCKET` is never used
[INFO] [stdout]   --> benches/hash_join/htap_simulation/txs.rs:25:7
[INFO] [stdout]    |
[INFO] [stdout] 25 | const JOIN_KEY_PER_BUCKET: usize = 20;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `tx_id`, `op`, and `gc_ts` are never read
[INFO] [stdout]   --> benches/hash_join/htap_simulation/txs.rs:29:9
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub struct TxOperation {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] 29 |     pub tx_id: TxId,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 30 |     pub tx_ts: Timestamp,
[INFO] [stdout] 31 |     pub op: OperationType,
[INFO] [stdout]    |         ^^
[INFO] [stdout] ...
[INFO] [stdout] 36 |     pub gc_ts: Vec<Timestamp>,                 // ts that we want to gc
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TxOperation` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `clear_cpu_cache` is never used
[INFO] [stdout]   --> benches/hash_join/htap_simulation/txs.rs:40:4
[INFO] [stdout]    |
[INFO] [stdout] 40 | fn clear_cpu_cache() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `add_op` is never used
[INFO] [stdout]    --> benches/hash_join/htap_simulation/txs.rs:159:12
[INFO] [stdout]     |
[INFO] [stdout] 145 | impl Tx {
[INFO] [stdout]     | ------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 159 |     pub fn add_op(&mut self, op: TxOperation) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `gen_new_ts`, `gen_txs`, and `choose_transaction` are never used
[INFO] [stdout]    --> benches/hash_join/htap_simulation/txs.rs:206:12
[INFO] [stdout]     |
[INFO] [stdout] 179 | impl TxBench {
[INFO] [stdout]     | ------------ associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 206 |     pub fn gen_new_ts(&mut self) -> Timestamp {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 419 |     pub fn gen_txs(&mut self) {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 427 |     fn choose_transaction(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `cId` should have a snake case name
[INFO] [stdout]   --> benches/hash_join/htap_simulation/dbgen.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     cId: i32,
[INFO] [stdout]    |     ^^^ help: convert the identifier to snake case: `c_id`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `dId` should have a snake case name
[INFO] [stdout]   --> benches/hash_join/htap_simulation/dbgen.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 |     dId: i32,
[INFO] [stdout]    |     ^^^ help: convert the identifier to snake case: `d_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `wId` should have a snake case name
[INFO] [stdout]   --> benches/hash_join/htap_simulation/dbgen.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 |     wId: i32,
[INFO] [stdout]    |     ^^^ help: convert the identifier to snake case: `w_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `C_FIRST` should have a snake case name
[INFO] [stdout]   --> benches/hash_join/htap_simulation/dbgen.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 |     C_FIRST: [u8; 16],
[INFO] [stdout]    |     ^^^^^^^ help: convert the identifier to snake case: `c_first`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `C_MIDDLE` should have a snake case name
[INFO] [stdout]   --> benches/hash_join/htap_simulation/dbgen.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 |     C_MIDDLE: [u8; 2],
[INFO] [stdout]    |     ^^^^^^^^ help: convert the identifier to snake case: `c_middle`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `C_LAST` should have a snake case name
[INFO] [stdout]   --> benches/hash_join/htap_simulation/dbgen.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 |     C_LAST: [u8; 16],
[INFO] [stdout]    |     ^^^^^^ help: convert the identifier to snake case: `c_last`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `C_STREET_1` should have a snake case name
[INFO] [stdout]   --> benches/hash_join/htap_simulation/dbgen.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 23 |     C_STREET_1: [u8; 20],
[INFO] [stdout]    |     ^^^^^^^^^^ help: convert the identifier to snake case: `c_street_1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `C_STREET_2` should have a snake case name
[INFO] [stdout]   --> benches/hash_join/htap_simulation/dbgen.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 24 |     C_STREET_2: [u8; 20],
[INFO] [stdout]    |     ^^^^^^^^^^ help: convert the identifier to snake case: `c_street_2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `C_CITY` should have a snake case name
[INFO] [stdout]   --> benches/hash_join/htap_simulation/dbgen.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     C_CITY: [u8; 20],
[INFO] [stdout]    |     ^^^^^^ help: convert the identifier to snake case: `c_city`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `C_STATE` should have a snake case name
[INFO] [stdout]   --> benches/hash_join/htap_simulation/dbgen.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 26 |     C_STATE: [u8; 2],
[INFO] [stdout]    |     ^^^^^^^ help: convert the identifier to snake case: `c_state`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `C_ZIP` should have a snake case name
[INFO] [stdout]   --> benches/hash_join/htap_simulation/dbgen.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 27 |     C_ZIP: [u8; 9],
[INFO] [stdout]    |     ^^^^^ help: convert the identifier to snake case: `c_zip`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `C_PHONE` should have a snake case name
[INFO] [stdout]   --> benches/hash_join/htap_simulation/dbgen.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 28 |     C_PHONE: [u8; 16],
[INFO] [stdout]    |     ^^^^^^^ help: convert the identifier to snake case: `c_phone`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `C_SINCE` should have a snake case name
[INFO] [stdout]   --> benches/hash_join/htap_simulation/dbgen.rs:29:5
[INFO] [stdout]    |
[INFO] [stdout] 29 |     C_SINCE: u64, // convert to u64 further processing
[INFO] [stdout]    |     ^^^^^^^ help: convert the identifier to snake case: `c_since`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `C_CREDIT` should have a snake case name
[INFO] [stdout]   --> benches/hash_join/htap_simulation/dbgen.rs:30:5
[INFO] [stdout]    |
[INFO] [stdout] 30 |     C_CREDIT: [u8; 2],
[INFO] [stdout]    |     ^^^^^^^^ help: convert the identifier to snake case: `c_credit`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `C_CREDIT_LIM` should have a snake case name
[INFO] [stdout]   --> benches/hash_join/htap_simulation/dbgen.rs:31:5
[INFO] [stdout]    |
[INFO] [stdout] 31 |     C_CREDIT_LIM: f64,
[INFO] [stdout]    |     ^^^^^^^^^^^^ help: convert the identifier to snake case: `c_credit_lim`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `C_DISCOUNT` should have a snake case name
[INFO] [stdout]   --> benches/hash_join/htap_simulation/dbgen.rs:32:5
[INFO] [stdout]    |
[INFO] [stdout] 32 |     C_DISCOUNT: f64,
[INFO] [stdout]    |     ^^^^^^^^^^ help: convert the identifier to snake case: `c_discount`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `C_BALANCE` should have a snake case name
[INFO] [stdout]   --> benches/hash_join/htap_simulation/dbgen.rs:33:5
[INFO] [stdout]    |
[INFO] [stdout] 33 |     C_BALANCE: f64,
[INFO] [stdout]    |     ^^^^^^^^^ help: convert the identifier to snake case: `c_balance`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `C_YTD_PAYMENT` should have a snake case name
[INFO] [stdout]   --> benches/hash_join/htap_simulation/dbgen.rs:34:5
[INFO] [stdout]    |
[INFO] [stdout] 34 |     C_YTD_PAYMENT: f64,
[INFO] [stdout]    |     ^^^^^^^^^^^^^ help: convert the identifier to snake case: `c_ytd_payment`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `C_PAYMENT_CNT` should have a snake case name
[INFO] [stdout]   --> benches/hash_join/htap_simulation/dbgen.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 35 |     C_PAYMENT_CNT: i32,
[INFO] [stdout]    |     ^^^^^^^^^^^^^ help: convert the identifier to snake case: `c_payment_cnt`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `C_DELIVERY_CNT` should have a snake case name
[INFO] [stdout]   --> benches/hash_join/htap_simulation/dbgen.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 36 |     C_DELIVERY_CNT: i32,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `c_delivery_cnt`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `C_DATA` should have a snake case name
[INFO] [stdout]   --> benches/hash_join/htap_simulation/dbgen.rs:37:5
[INFO] [stdout]    |
[INFO] [stdout] 37 |     C_DATA: [u8; 500],
[INFO] [stdout]    |     ^^^^^^ help: convert the identifier to snake case: `c_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `C_N_NATIONKEY` should have a snake case name
[INFO] [stdout]   --> benches/hash_join/htap_simulation/dbgen.rs:38:5
[INFO] [stdout]    |
[INFO] [stdout] 38 |     C_N_NATIONKEY: i32,
[INFO] [stdout]    |     ^^^^^^^^^^^^^ help: convert the identifier to snake case: `c_n_nationkey`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `A` should have a snake case name
[INFO] [stdout]    --> benches/hash_join/htap_simulation/dbgen.rs:278:42
[INFO] [stdout]     |
[INFO] [stdout] 278 |     fn random_non_uniform_int(&mut self, A: i32, x: i32, y: i32, C: i32) -> i32 {
[INFO] [stdout]     |                                          ^ help: convert the identifier to snake case: `a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `C` should have a snake case name
[INFO] [stdout]    --> benches/hash_join/htap_simulation/dbgen.rs:278:66
[INFO] [stdout]     |
[INFO] [stdout] 278 |     fn random_non_uniform_int(&mut self, A: i32, x: i32, y: i32, C: i32) -> i32 {
[INFO] [stdout]     |                                                                  ^ help: convert the identifier to snake case (notice the capitalization): `c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `wId` should have a snake case name
[INFO] [stdout]    --> benches/hash_join/htap_simulation/dbgen.rs:378:13
[INFO] [stdout]     |
[INFO] [stdout] 378 |         for wId in 1..=self.cli.warehouse_count as i32 {
[INFO] [stdout]     |             ^^^ help: convert the identifier to snake case: `w_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `dId` should have a snake case name
[INFO] [stdout]    --> benches/hash_join/htap_simulation/dbgen.rs:379:17
[INFO] [stdout]     |
[INFO] [stdout] 379 |             for dId in 1..=10 {
[INFO] [stdout]     |                 ^^^ help: convert the identifier to snake case: `d_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `cId` should have a snake case name
[INFO] [stdout]    --> benches/hash_join/htap_simulation/dbgen.rs:380:21
[INFO] [stdout]     |
[INFO] [stdout] 380 |                 for cId in 1..=3000 {
[INFO] [stdout]     |                     ^^^ help: convert the identifier to snake case: `c_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `hAmount` should have a snake case name
[INFO] [stdout]    --> benches/hash_join/htap_simulation/dbgen.rs:396:13
[INFO] [stdout]     |
[INFO] [stdout] 396 |         let hAmount = self.gen_double(1.0, 5000.0, 2);
[INFO] [stdout]     |             ^^^^^^^ help: convert the identifier to snake case: `h_amount`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `cId` should have a snake case name
[INFO] [stdout]    --> benches/hash_join/htap_simulation/dbgen.rs:400:13
[INFO] [stdout]     |
[INFO] [stdout] 400 |         let cId = self.random_non_uniform_int(1023, 1, 3000, 867);
[INFO] [stdout]     |             ^^^ help: convert the identifier to snake case: `c_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `dId` should have a snake case name
[INFO] [stdout]    --> benches/hash_join/htap_simulation/dbgen.rs:401:13
[INFO] [stdout]     |
[INFO] [stdout] 401 |         let dId = rand::distributions::uniform::UniformInt::<i32>::new_inclusive(1, 10)
[INFO] [stdout]     |             ^^^ help: convert the identifier to snake case: `d_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `wId` should have a snake case name
[INFO] [stdout]    --> benches/hash_join/htap_simulation/dbgen.rs:403:13
[INFO] [stdout]     |
[INFO] [stdout] 403 |         let wId = rand::distributions::uniform::UniformInt::<i32>::new_inclusive(
[INFO] [stdout]     |             ^^^ help: convert the identifier to snake case: `w_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `cDid` should have a snake case name
[INFO] [stdout]    --> benches/hash_join/htap_simulation/dbgen.rs:409:14
[INFO] [stdout]     |
[INFO] [stdout] 409 |         let (cDid, cWid) = if x <= 85 {
[INFO] [stdout]     |              ^^^^ help: convert the identifier to snake case: `c_did`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `cWid` should have a snake case name
[INFO] [stdout]    --> benches/hash_join/htap_simulation/dbgen.rs:409:20
[INFO] [stdout]     |
[INFO] [stdout] 409 |         let (cDid, cWid) = if x <= 85 {
[INFO] [stdout]     |                    ^^^^ help: convert the identifier to snake case: `c_wid`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_expected_update_csv` is never used
[INFO] [stdout]    --> benches/hash_join/join_simulation/join_simulation.rs:192:4
[INFO] [stdout]     |
[INFO] [stdout] 192 | fn read_expected_update_csv(file: &Path) -> io::Result<Vec<ExpectedUpdateRow>> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `max_timestamp` is never used
[INFO] [stdout]    --> benches/hash_join/join_simulation/join_simulation.rs:276:4
[INFO] [stdout]     |
[INFO] [stdout] 276 | fn max_timestamp(rows: &[ExpectedUpdateRow]) -> u64 {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `mvcc_entry_to_expected_row` is never used
[INFO] [stdout]    --> benches/hash_join/join_simulation/join_simulation.rs:296:4
[INFO] [stdout]     |
[INFO] [stdout] 296 | fn mvcc_entry_to_expected_row(e: &MvccEntry) -> ExpectedUpdateRow {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_txs_and_apply_write_repair` is never used
[INFO] [stdout]    --> benches/hash_join/join_simulation/join_simulation.rs:423:4
[INFO] [stdout]     |
[INFO] [stdout] 423 | fn read_txs_and_apply_write_repair(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_txs_and_apply_read_repair` is never used
[INFO] [stdout]    --> benches/hash_join/join_simulation/join_simulation.rs:480:4
[INFO] [stdout]     |
[INFO] [stdout] 480 | fn read_txs_and_apply_read_repair(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `log_info`
[INFO] [stdout]    --> src/access_method/chain/mod.rs:226:9
[INFO] [stdout]     |
[INFO] [stdout] 226 |         log_info,
[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: `AtomicUsize`
[INFO] [stdout]  --> src/access_method/fbt/foster_btree.rs:7:18
[INFO] [stdout]   |
[INFO] [stdout] 7 |         atomic::{AtomicUsize, Ordering},
[INFO] [stdout]   |                  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `sleep`
[INFO] [stdout]     --> src/bp/buffer_pool.rs:1088:29
[INFO] [stdout]      |
[INFO] [stdout] 1088 |     use std::thread::{self, sleep};
[INFO] [stdout]      |                             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AtomicU64`, `Duration`, `Instant`, and `Ordering`
[INFO] [stdout]  --> src/mvcc_index/dual_heap_hash/chained_hash_bucket_second.rs:4:18
[INFO] [stdout]   |
[INFO] [stdout] 4 |         atomic::{AtomicU64, Ordering},
[INFO] [stdout]   |                  ^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 7 |     time::{Duration, Instant},
[INFO] [stdout]   |            ^^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `FrameReadGuard`, `MemPoolStatus`, `PageFrameKey`, `TxId`, `fix_frame_id2`, `log_debug`, `log_info`, `log_warn`, and `write_page`
[INFO] [stdout]   --> src/mvcc_index/dual_heap_hash/chained_hash_bucket_second.rs:11:24
[INFO] [stdout]    |
[INFO] [stdout] 11 |     bp::{ContainerKey, FrameReadGuard, MemPool, MemPoolStatus, PageFrameKey},
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^           ^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 12 |     log_debug, log_info, log_warn,
[INFO] [stdout]    |     ^^^^^^^^^  ^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 13 |     mvcc_index::{
[INFO] [stdout] 14 |         hash_common::{fix_frame_id2, write_page, KVWithTs, RowDelta, StatCollector},
[INFO] [stdout]    |                       ^^^^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 17 |         Delta, MvccEntry, TxId,
[INFO] [stdout]    |                           ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `FrameReadGuard`, `MemPoolStatus`, `PageFrameKey`, `Page`, and `log_warn`
[INFO] [stdout]  --> src/mvcc_index/dual_heap_hash/chained_hash_table.rs:2:24
[INFO] [stdout]   |
[INFO] [stdout] 2 |     bp::{ContainerKey, FrameReadGuard, MemPool, MemPoolStatus, PageFrameKey},
[INFO] [stdout]   |                        ^^^^^^^^^^^^^^           ^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 3 |     log_warn,
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 9 |     page::{Page, PageId},
[INFO] [stdout]   |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `core::fmt`
[INFO] [stdout]   --> src/mvcc_index/dual_heap_hash/chained_hash_table.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use core::fmt;
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BTreeMap`, `HashMap`, `Mutex`, `fmt::format`, and `result`
[INFO] [stdout]   --> src/mvcc_index/dual_heap_hash/chained_hash_table.rs:14:44
[INFO] [stdout]    |
[INFO] [stdout] 14 |     collections::{hash_map::DefaultHasher, BTreeMap, HashMap},
[INFO] [stdout]    |                                            ^^^^^^^^  ^^^^^^^
[INFO] [stdout] 15 |     fmt::format,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 16 |     hash::{Hash, Hasher},
[INFO] [stdout] 17 |     result,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 20 |         Arc, Mutex,
[INFO] [stdout]    |              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TxInfo`
[INFO] [stdout]   --> src/mvcc_index/dual_heap_hash/chained_hash_table.rs:24:75
[INFO] [stdout]    |
[INFO] [stdout] 24 | use super::{chained_hash_bucket_second::DualChainBucket, Timestamp, TxId, TxInfo};
[INFO] [stdout]    |                                                                           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stdout]  --> src/mvcc_index/dual_heap_hash/mod.rs:5:13
[INFO] [stdout]   |
[INFO] [stdout] 5 | use serde::{Deserialize, Serialize};
[INFO] [stdout]   |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `core::fmt`
[INFO] [stdout]  --> src/mvcc_index/hash_common.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use core::fmt;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Hash`, `Hasher`, and `SipHasher`
[INFO] [stdout]  --> src/mvcc_index/hash_common.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 |     hash::{Hash, Hasher, SipHasher},
[INFO] [stdout]   |            ^^^^  ^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `log_warn`
[INFO] [stdout]   --> src/mvcc_index/hash_common.rs:15:16
[INFO] [stdout]    |
[INFO] [stdout] 15 |     log_debug, log_warn,
[INFO] [stdout]    |                ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `FrameReadGuard`, `MemPoolStatus`, `PageFrameKey`, `Page`, and `log_warn`
[INFO] [stdout]   --> src/mvcc_index/hash_heap/hash_heap_table.rs:2:24
[INFO] [stdout]    |
[INFO] [stdout]  2 |     bp::{ContainerKey, FrameReadGuard, MemPool, MemPoolStatus, PageFrameKey},
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^           ^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout]  3 |     log_warn,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 12 |     page::{Page, PageId},
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashSet`, `error::Error`, `fmt::Debug`, and `time::Duration`
[INFO] [stdout]   --> src/mvcc_index/hash_heap/hash_heap_table.rs:16:63
[INFO] [stdout]    |
[INFO] [stdout] 16 |     collections::{hash_map::DefaultHasher, BTreeMap, HashMap, HashSet},
[INFO] [stdout]    |                                                               ^^^^^^^
[INFO] [stdout] 17 |     error::Error,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 18 |     fmt::Debug,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     time::Duration,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `TxId` and `log_warn`
[INFO] [stdout]  --> src/mvcc_index/hash_join_page.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 |     log_warn,
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 4 |     mvcc_index::{hash_common::StatCollector, MvccEntry, TxId},
[INFO] [stdout]   |                                                         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `core::slice`
[INFO] [stdout]  --> src/mvcc_index/hash_join_page.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use core::slice;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AtomicPtr`, `Instant`, and `Ordering`
[INFO] [stdout]   --> src/mvcc_index/hash_join_page.rs:13:18
[INFO] [stdout]    |
[INFO] [stdout] 13 |         atomic::{AtomicPtr, AtomicU64, Ordering},
[INFO] [stdout]    |                  ^^^^^^^^^             ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 16 |     time::{self, Instant},
[INFO] [stdout]    |                  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `chrono::Duration`
[INFO] [stdout]    --> src/mvcc_index/hash_join_page.rs:208:5
[INFO] [stdout]     |
[INFO] [stdout] 208 | use chrono::Duration;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `KVWithTs`
[INFO] [stdout]    --> src/mvcc_index/hash_join_page.rs:489:19
[INFO] [stdout]     |
[INFO] [stdout] 489 |     hash_common::{KVWithTs, MvccEntryLoc, RowDelta},
[INFO] [stdout]     |                   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AtomicU64`, `self`, and `thread::current`
[INFO] [stdout]  --> src/mvcc_index/hash_join_heap_chain.rs:4:18
[INFO] [stdout]   |
[INFO] [stdout] 4 |         atomic::{self, AtomicU32, AtomicU64, Ordering},
[INFO] [stdout]   |                  ^^^^             ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 7 |     thread::current,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `PAGE_CNT` and `log_warn`
[INFO] [stdout]   --> src/mvcc_index/hash_join_heap_chain.rs:14:37
[INFO] [stdout]    |
[INFO] [stdout] 14 |     log_debug, log_info, log_trace, log_warn,
[INFO] [stdout]    |                                     ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 17 |         hash_join_page::{record::RecordRef, HashJoinPage, PAGE_CNT},
[INFO] [stdout]    |                                                           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::mvcc_index::AccessMethodError`
[INFO] [stdout]     --> src/mvcc_index/hash_join_heap_chain.rs:1719:9
[INFO] [stdout]      |
[INFO] [stdout] 1719 |     use crate::mvcc_index::AccessMethodError;
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AtomicUsize` and `Ordering`
[INFO] [stdout]     --> src/mvcc_index/hash_join_heap_chain.rs:1726:18
[INFO] [stdout]      |
[INFO] [stdout] 1726 |         atomic::{AtomicUsize, Ordering},
[INFO] [stdout]      |                  ^^^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/mvcc_index/rust_hash_map/rust_hash_map.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 |     sync::{Mutex, RwLock},
[INFO] [stdout]   |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::log_warn`
[INFO] [stdout]  --> src/mvcc_index/hash_join_unittest.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 5 |     use crate::log_warn;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]  --> src/mvcc_index/hash_join_unittest.rs:7:57
[INFO] [stdout]   |
[INFO] [stdout] 7 |     use crate::mvcc_index::hash_heap::hash_heap_table::{self, HeapHashTable};
[INFO] [stdout]   |                                                         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `dual_heap_hash`
[INFO] [stdout]  --> src/mvcc_index/hash_join_unittest.rs:9:29
[INFO] [stdout]   |
[INFO] [stdout] 9 |     use crate::mvcc_index::{dual_heap_hash, Delta, MvccIndex};
[INFO] [stdout]   |                             ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::thread`
[INFO] [stdout]    --> src/mvcc_index/hash_join_unittest.rs:981:13
[INFO] [stdout]     |
[INFO] [stdout] 981 |         use std::thread;
[INFO] [stdout]     |             ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `core::panic`
[INFO] [stdout]  --> src/mvcc_index/ts_partitioned/ts_partitioned_collection.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use core::panic;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Excluded`, `Unbounded`, and `time::Instant`
[INFO] [stdout]  --> src/mvcc_index/ts_partitioned/ts_partitioned_collection.rs:4:18
[INFO] [stdout]   |
[INFO] [stdout] 4 |     ops::Bound::{Excluded, Unbounded},
[INFO] [stdout]   |                  ^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 5 |     sync::Arc,
[INFO] [stdout] 6 |     time::Instant,
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `PageFrameKey`, `log_warn`, `page::Page`, and `write_page`
[INFO] [stdout]   --> src/mvcc_index/ts_partitioned/ts_partitioned_collection.rs:10:33
[INFO] [stdout]    |
[INFO] [stdout] 10 |     bp::{ContainerKey, MemPool, PageFrameKey},
[INFO] [stdout]    |                                 ^^^^^^^^^^^^
[INFO] [stdout] 11 |     log_warn,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 14 |             read_repair_btree, read_repair_vec, write_page, KVWithTs, MvccEntryLoc, RowDelta,
[INFO] [stdout]    |                                                 ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 21 |     page::Page,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `log_warn`
[INFO] [stdout]  --> src/mvcc_index/ts_partitioned/ts_partitioned_table.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 |     log_warn,
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `atomic::AtomicBool`
[INFO] [stdout]   --> src/mvcc_index/mod.rs:26:12
[INFO] [stdout]    |
[INFO] [stdout] 26 |     sync::{atomic::AtomicBool, Arc},
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `log_trace`
[INFO] [stdout]   --> src/tpcc/orderstatus_txn.rs:10:23
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::{log_info, log_trace, write_fields};
[INFO] [stdout]    |                       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `log_trace`
[INFO] [stdout]   --> src/tpcc/stocklevel_txn.rs:10:23
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::{log_info, log_trace, write_fields};
[INFO] [stdout]    |                       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::hash::DefaultHasher`
[INFO] [stdout]  --> src/tpcc/tx_utils.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::hash::DefaultHasher;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Hash`
[INFO] [stdout]  --> src/tpcc/tx_utils.rs:5:17
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::hash::{Hash, Hasher};
[INFO] [stdout]   |                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashSet`
[INFO] [stdout]  --> src/txn_storage/mvcc_hash_storage/mod.rs:3:28
[INFO] [stdout]   |
[INFO] [stdout] 3 |     collections::{HashMap, HashSet},
[INFO] [stdout]   |                            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ContainerId`, `DatabaseId`, and `dual_heap_hash::chained_hash_table::ChainedHashTable`
[INFO] [stdout]  --> src/txn_storage/mvcc_hash_storage/mod.rs:8:10
[INFO] [stdout]   |
[INFO] [stdout] 8 |     bp::{ContainerId, DatabaseId, MemPool},
[INFO] [stdout]   |          ^^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 9 |     mvcc_index::{dual_heap_hash::chained_hash_table::ChainedHashTable, MvccIndex, TxId, TxInfo},
[INFO] [stdout]   |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ContainerOptions`, `DBOptions`, `ScanOptions`, `TxnOptions`, `TxnStorageStatus`, and `TxnStorageTrait`
[INFO] [stdout]   --> src/txn_storage/mvcc_hash_storage/mod.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     ContainerOptions, DBOptions, ScanOptions, TxnOptions, TxnStorageStatus, TxnStorageTrait,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^  ^^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^  ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `log_info`
[INFO] [stdout]   --> src/file_manager.rs:14:17
[INFO] [stdout]    |
[INFO] [stdout] 14 |     use crate::{log_info, log_trace};
[INFO] [stdout]    |                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `MvccEntry`
[INFO] [stdout]  --> src/naive_hash_index/naive_hash_table/mod.rs:5:18
[INFO] [stdout]   |
[INFO] [stdout] 5 |     mvcc_index::{MvccEntry, TxId},
[INFO] [stdout]   |                  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AtomicU64`, `BTreeMap`, and `self`
[INFO] [stdout]  --> src/naive_hash_index/naive_hash_table/hash_join_chain.rs:2:19
[INFO] [stdout]   |
[INFO] [stdout] 2 |     collections::{BTreeMap, HashMap},
[INFO] [stdout]   |                   ^^^^^^^^
[INFO] [stdout] 3 |     sync::{
[INFO] [stdout] 4 |         atomic::{self, AtomicU32, AtomicU64, Ordering},
[INFO] [stdout]   |                  ^^^^             ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Record`, `fix_frame_id2`, `log_info`, `log_warn`, and `prelude::Timestamp`
[INFO] [stdout]   --> src/naive_hash_index/naive_hash_table/hash_join_chain.rs:13:16
[INFO] [stdout]    |
[INFO] [stdout] 13 |     log_debug, log_info, log_trace, log_warn,
[INFO] [stdout]    |                ^^^^^^^^             ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 16 |             fix_frame_id, fix_frame_id2, read_page, write_page, RowDelta, StatCollector,
[INFO] [stdout]    |                           ^^^^^^^^^^^^^
[INFO] [stdout] 17 |         },
[INFO] [stdout] 18 |         hash_join_page::record::{Record, RecordRef},
[INFO] [stdout]    |                                  ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 23 |     prelude::Timestamp,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `prelude::Timestamp`
[INFO] [stdout]  --> src/naive_hash_index/naive_hash_table/hash_join_page.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 8 |         prelude::Timestamp,
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `prelude::Timestamp`
[INFO] [stdout]    --> src/naive_hash_index/naive_hash_table/hash_join_page.rs:104:35
[INFO] [stdout]     |
[INFO] [stdout] 104 |     use crate::{mvcc_index::TxId, prelude::Timestamp};
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Record`
[INFO] [stdout]    --> src/naive_hash_index/naive_hash_table/hash_join_page.rs:218:34
[INFO] [stdout]     |
[INFO] [stdout] 218 |         hash_join_page::record::{Record, RecordRef},
[INFO] [stdout]     |                                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Delta`, `MvccEntry`, `Page`, `TxId`, `read_repair_btree`, and `read_repair_vec`
[INFO] [stdout]  --> src/naive_hash_index/naive_hash_table/hash_join_table.rs:4:23
[INFO] [stdout]   |
[INFO] [stdout] 4 |         hash_common::{read_repair_btree, read_repair_vec, StatCollector},
[INFO] [stdout]   |                       ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 5 |         hash_join_page::record::RecordRef,
[INFO] [stdout] 6 |         Delta, MvccEntry, MvccIndex, TxId,
[INFO] [stdout]   |         ^^^^^  ^^^^^^^^^             ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 9 |     page::{Page, PageId},
[INFO] [stdout]   |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AtomicBool`, `AtomicU64`, `BTreeMap`, `HashMap`, `HashSet`, and `Ordering`
[INFO] [stdout]   --> src/naive_hash_index/naive_hash_table/hash_join_table.rs:13:44
[INFO] [stdout]    |
[INFO] [stdout] 13 |     collections::{hash_map::DefaultHasher, BTreeMap, HashMap, HashSet},
[INFO] [stdout]    |                                            ^^^^^^^^  ^^^^^^^  ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 16 |         atomic::{AtomicBool, AtomicU32, AtomicU64, Ordering},
[INFO] [stdout]    |                  ^^^^^^^^^^             ^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated struct `std::hash::SipHasher`: use `std::hash::DefaultHasher` instead
[INFO] [stdout]  --> src/mvcc_index/hash_common.rs:4:26
[INFO] [stdout]   |
[INFO] [stdout] 4 |     hash::{Hash, Hasher, SipHasher},
[INFO] [stdout]   |                          ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]    --> src/access_method/chain/read_optimized_chain.rs:478:25
[INFO] [stdout]     |
[INFO] [stdout] 447 | /                         match upgraded_page.insert(key, value) {
[INFO] [stdout] 448 | |                             Ok(_) => {
[INFO] [stdout] 449 | |                                 return Ok(upgraded_page);
[INFO] [stdout] ...   |
[INFO] [stdout] 477 | |                         }
[INFO] [stdout]     | |_________________________- any code following this `match` expression is unreachable, as all arms diverge
[INFO] [stdout] 478 |                           return Ok(upgraded_page);
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]     --> src/mvcc_index/hash_join_heap_chain.rs:2050:21
[INFO] [stdout]      |
[INFO] [stdout] 2049 |                       continue;
[INFO] [stdout]      |                       -------- any code following this expression is unreachable
[INFO] [stdout] 2050 | /                     if ref_state.is_empty() {
[INFO] [stdout] 2051 | |                         continue;
[INFO] [stdout] 2052 | |                     }
[INFO] [stdout]      | |_____________________^ unreachable statement
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SingleTsHashTable`
[INFO] [stdout]   --> src/naive_hash_index/naive_mvht.rs:15:61
[INFO] [stdout]    |
[INFO] [stdout] 15 |         naive_hash_table::{hash_join_table::NaiveHashTable, SingleTsHashTable},
[INFO] [stdout]    |                                                             ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SingleTsHashTable`
[INFO] [stdout]  --> src/naive_hash_index/naive_hash_table/hash_join_table.rs:8:74
[INFO] [stdout]   |
[INFO] [stdout] 8 |     naive_hash_index::naive_hash_table::{hash_join_chain::HeapHashChain, SingleTsHashTable},
[INFO] [stdout]   |                                                                          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `hash_join_page::HashJoinPage`
[INFO] [stdout]   --> src/mvcc_index/ts_partitioned/ts_partitioned_collection.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 18 |         hash_join_page::HashJoinPage,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `MvccIndex`
[INFO] [stdout]  --> src/naive_hash_index/naive_hash_table/hash_join_table.rs:6:27
[INFO] [stdout]   |
[INFO] [stdout] 6 |         Delta, MvccEntry, MvccIndex, TxId,
[INFO] [stdout]   |                           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `hash_join_page::HashJoinPage`
[INFO] [stdout]   --> src/mvcc_index/dual_heap_hash/chained_hash_bucket_second.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 16 |         hash_join_page::HashJoinPage,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Hasher`
[INFO] [stdout]  --> src/tpcc/tx_utils.rs:5:23
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::hash::{Hash, Hasher};
[INFO] [stdout]   |                       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::mvcc_index::MvccIndex`
[INFO] [stdout]     --> src/mvcc_index/hash_join_heap_chain.rs:1721:9
[INFO] [stdout]      |
[INFO] [stdout] 1721 |     use crate::mvcc_index::MvccIndex;
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `original_value`
[INFO] [stdout]     --> src/access_method/chain/read_optimized_page.rs:1747:19
[INFO] [stdout]      |
[INFO] [stdout] 1747 |         for (key, original_value) in keys.iter().zip(values.iter()) {
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_original_value`
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `current_pos` is never read
[INFO] [stdout]    --> src/access_method/chain/short_key_mvcc_page.rs:196:13
[INFO] [stdout]     |
[INFO] [stdout] 196 |             current_pos += std::mem::size_of::<u64>();
[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: `key`
[INFO] [stdout]     --> src/access_method/chain/short_key_mvcc_page.rs:1155:34
[INFO] [stdout]      |
[INFO] [stdout] 1155 |     fn update_with_ts(&mut self, key: &[u8], val: &[u8], ts: u64) -> Result<(), AccessMethodError> {
[INFO] [stdout]      |                                  ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `val`
[INFO] [stdout]     --> src/access_method/chain/short_key_mvcc_page.rs:1155:46
[INFO] [stdout]      |
[INFO] [stdout] 1155 |     fn update_with_ts(&mut self, key: &[u8], val: &[u8], ts: u64) -> Result<(), AccessMethodError> {
[INFO] [stdout]      |                                              ^^^ help: if this is intentional, prefix it with an underscore: `_val`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ts`
[INFO] [stdout]     --> src/access_method/chain/short_key_mvcc_page.rs:1155:58
[INFO] [stdout]      |
[INFO] [stdout] 1155 |     fn update_with_ts(&mut self, key: &[u8], val: &[u8], ts: u64) -> Result<(), AccessMethodError> {
[INFO] [stdout]      |                                                          ^^ help: if this is intentional, prefix it with an underscore: `_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]     --> src/access_method/chain/short_key_mvcc_page.rs:1161:9
[INFO] [stdout]      |
[INFO] [stdout] 1161 |         key: &[u8],
[INFO] [stdout]      |         ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `val`
[INFO] [stdout]     --> src/access_method/chain/short_key_mvcc_page.rs:1162:9
[INFO] [stdout]      |
[INFO] [stdout] 1162 |         val: &[u8],
[INFO] [stdout]      |         ^^^ help: if this is intentional, prefix it with an underscore: `_val`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ts`
[INFO] [stdout]     --> src/access_method/chain/short_key_mvcc_page.rs:1163:9
[INFO] [stdout]      |
[INFO] [stdout] 1163 |         ts: u64,
[INFO] [stdout]      |         ^^ help: if this is intentional, prefix it with an underscore: `_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `slot_id`
[INFO] [stdout]     --> src/access_method/chain/short_key_mvcc_page.rs:1164:9
[INFO] [stdout]      |
[INFO] [stdout] 1164 |         slot_id: u32,
[INFO] [stdout]      |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_slot_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `original_value`
[INFO] [stdout]     --> src/access_method/chain/short_key_mvcc_page.rs:1899:19
[INFO] [stdout]      |
[INFO] [stdout] 1899 |         for (key, original_value) in keys.iter().zip(values.iter()) {
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_original_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/access_method/chain/mod.rs:159:9
[INFO] [stdout]     |
[INFO] [stdout] 159 |         key: &[u8],
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/access_method/chain/mod.rs:160:9
[INFO] [stdout]     |
[INFO] [stdout] 160 |         value: &[u8],
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `merge_fn`
[INFO] [stdout]    --> src/access_method/chain/mod.rs:161:9
[INFO] [stdout]     |
[INFO] [stdout] 161 |         merge_fn: impl Fn(&[u8], &[u8]) -> Vec<u8>,
[INFO] [stdout]     |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_merge_fn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/access_method/chain/mod.rs:167:22
[INFO] [stdout]     |
[INFO] [stdout] 167 |     fn delete(&self, key: &[u8]) -> Result<(), AccessMethodError> {
[INFO] [stdout]     |                      ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `filter`
[INFO] [stdout]    --> src/access_method/chain/mod.rs:183:9
[INFO] [stdout]     |
[INFO] [stdout] 183 |         filter: Arc<dyn Fn(&[u8], &[u8]) -> bool + Send + Sync>,
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_filter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `current_val`
[INFO] [stdout]     --> src/access_method/fbt/foster_btree.rs:4441:19
[INFO] [stdout]      |
[INFO] [stdout] 4441 |         for (key, current_val) in iter {
[INFO] [stdout]      |                   ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_current_val`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/bp/buffer_pool.rs:852:29
[INFO] [stdout]     |
[INFO] [stdout] 852 |     fn prefetch_page(&self, key: PageFrameKey) -> Result<(), MemPoolStatus> {
[INFO] [stdout]     |                             ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/mvcc_index/dual_heap_hash/chained_hash_table.rs:64:13
[INFO] [stdout]    |
[INFO] [stdout] 64 |         for i in 0..num_buckets {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/mvcc_index/dual_heap_hash/chained_hash_table.rs:382:9
[INFO] [stdout]     |
[INFO] [stdout] 382 |         key: &[u8],
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ts`
[INFO] [stdout]    --> src/mvcc_index/dual_heap_hash/chained_hash_table.rs:383:9
[INFO] [stdout]     |
[INFO] [stdout] 383 |         ts: Timestamp,
[INFO] [stdout]     |         ^^ help: if this is intentional, prefix it with an underscore: `_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/mvcc_index/hash_heap/hash_heap_table.rs:59:13
[INFO] [stdout]    |
[INFO] [stdout] 59 |         let mut meta_page = mem_pool.create_new_page_for_write(c_key).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: `i`
[INFO] [stdout]   --> src/mvcc_index/hash_heap/hash_heap_table.rs:64:13
[INFO] [stdout]    |
[INFO] [stdout] 64 |         for i in 0..num_buckets {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pkey`
[INFO] [stdout]    --> src/mvcc_index/hash_heap/hash_heap_table.rs:170:9
[INFO] [stdout]     |
[INFO] [stdout] 170 |         pkey: &[u8],
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_pkey`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ts`
[INFO] [stdout]    --> src/mvcc_index/hash_heap/hash_heap_table.rs:529:27
[INFO] [stdout]     |
[INFO] [stdout] 529 |     fn split_at_ts(&self, ts: Timestamp) -> Result<(), Self::Error> {
[INFO] [stdout]     |                           ^^ help: if this is intentional, prefix it with an underscore: `_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `result`
[INFO] [stdout]    --> src/mvcc_index/hash_heap/hash_heap_table.rs:657:9
[INFO] [stdout]     |
[INFO] [stdout] 657 |     let result = <HeapHashTable<_> as MvccIndex<_>>::scan_all(&table)
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `str`
[INFO] [stdout]   --> src/mvcc_index/hash_join_page.rs:39:25
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub fn print_statistics(str: impl AsRef<str>) {
[INFO] [stdout]    |                         ^^^ help: if this is intentional, prefix it with an underscore: `_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `slot_prefix`
[INFO] [stdout]     --> src/mvcc_index/hash_join_page.rs:1554:13
[INFO] [stdout]      |
[INFO] [stdout] 1554 |         let slot_prefix = &slot.pkey_prefix()[..prefix_len];
[INFO] [stdout]      |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_slot_prefix`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `insert_entry`
[INFO] [stdout]     --> src/mvcc_index/hash_join_page.rs:2454:13
[INFO] [stdout]      |
[INFO] [stdout] 2454 |         let insert_entry = MvccEntry::new(key.clone(), pkey.clone(), value.clone(), 100, 200);
[INFO] [stdout]      |             ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_insert_entry`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/mvcc_index/hash_join_page.rs:2659:13
[INFO] [stdout]      |
[INFO] [stdout] 2659 |         let mut entry1 = MvccEntry::new(key.clone(), pkey.clone(), value1.clone(), 100, 150);
[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/mvcc_index/hash_join_page.rs:2679:13
[INFO] [stdout]      |
[INFO] [stdout] 2679 |         let mut entry2 = MvccEntry::new(key.clone(), pkey.clone(), value2.clone(), 150, 200);
[INFO] [stdout]      |             ----^^^^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entry1`
[INFO] [stdout]     --> src/mvcc_index/hash_join_page.rs:2659:13
[INFO] [stdout]      |
[INFO] [stdout] 2659 |         let mut entry1 = MvccEntry::new(key.clone(), pkey.clone(), value1.clone(), 100, 150);
[INFO] [stdout]      |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_entry1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entry2`
[INFO] [stdout]     --> src/mvcc_index/hash_join_page.rs:2679:13
[INFO] [stdout]      |
[INFO] [stdout] 2679 |         let mut entry2 = MvccEntry::new(key.clone(), pkey.clone(), value2.clone(), 150, 200);
[INFO] [stdout]      |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_entry2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/mvcc_index/hash_join_page.rs:2780:13
[INFO] [stdout]      |
[INFO] [stdout] 2780 |         let mut entry1 = MvccEntry::new(key.clone(), pkey.clone(), value1.clone(), 100, 150);
[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/mvcc_index/hash_join_page.rs:2800:13
[INFO] [stdout]      |
[INFO] [stdout] 2800 |         let mut entry2 = MvccEntry::new(key.clone(), pkey.clone(), value2.clone(), 150, 200);
[INFO] [stdout]      |             ----^^^^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entry1`
[INFO] [stdout]     --> src/mvcc_index/hash_join_page.rs:2780:13
[INFO] [stdout]      |
[INFO] [stdout] 2780 |         let mut entry1 = MvccEntry::new(key.clone(), pkey.clone(), value1.clone(), 100, 150);
[INFO] [stdout]      |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_entry1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entry2`
[INFO] [stdout]     --> src/mvcc_index/hash_join_page.rs:2800:13
[INFO] [stdout]      |
[INFO] [stdout] 2800 |         let mut entry2 = MvccEntry::new(key.clone(), pkey.clone(), value2.clone(), 150, 200);
[INFO] [stdout]      |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_entry2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/mvcc_index/hash_join_page.rs:2900:13
[INFO] [stdout]      |
[INFO] [stdout] 2900 |         let mut orig_entry =
[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/mvcc_index/hash_join_page.rs:2920:13
[INFO] [stdout]      |
[INFO] [stdout] 2920 |         let mut new_entry = MvccEntry::new(key.clone(), pkey.clone(), new_value.clone(), 80, 150);
[INFO] [stdout]      |             ----^^^^^^^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `orig_entry`
[INFO] [stdout]     --> src/mvcc_index/hash_join_page.rs:2900:13
[INFO] [stdout]      |
[INFO] [stdout] 2900 |         let mut orig_entry =
[INFO] [stdout]      |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_orig_entry`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `new_entry`
[INFO] [stdout]     --> src/mvcc_index/hash_join_page.rs:2920:13
[INFO] [stdout]      |
[INFO] [stdout] 2920 |         let mut new_entry = MvccEntry::new(key.clone(), pkey.clone(), new_value.clone(), 80, 150);
[INFO] [stdout]      |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_new_entry`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/mvcc_index/hash_join_page.rs:2995:13
[INFO] [stdout]      |
[INFO] [stdout] 2995 |         let mut entry1 =
[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/mvcc_index/hash_join_page.rs:3003:13
[INFO] [stdout]      |
[INFO] [stdout] 3003 |         let mut entry2 =
[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/mvcc_index/hash_join_page.rs:3011:13
[INFO] [stdout]      |
[INFO] [stdout] 3011 |         let mut entry3 =
[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/mvcc_index/hash_join_page.rs:3075:13
[INFO] [stdout]      |
[INFO] [stdout] 3075 |         let mut entry_a = MvccEntry::new(key.clone(), pkey.clone(), b"value-A".to_vec(), 100, 150);
[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/mvcc_index/hash_join_page.rs:3076:13
[INFO] [stdout]      |
[INFO] [stdout] 3076 |         let mut entry_b = MvccEntry::new(key.clone(), pkey.clone(), b"value-B".to_vec(), 150, 200);
[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/mvcc_index/hash_join_page.rs:3077:13
[INFO] [stdout]      |
[INFO] [stdout] 3077 |         let mut entry_c = MvccEntry::new(key.clone(), pkey.clone(), b"value-C".to_vec(), 200, 250);
[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/mvcc_index/hash_join_page.rs:3191:17
[INFO] [stdout]      |
[INFO] [stdout] 3191 |             let mut entry = MvccEntry::new(key.clone(), pkey.clone(), value, start_ts, end_ts);
[INFO] [stdout]      |                 ----^^^^^
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pkey`
[INFO] [stdout]    --> src/mvcc_index/hash_join_heap_chain.rs:392:9
[INFO] [stdout]     |
[INFO] [stdout] 392 |         pkey: &[u8],
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_pkey`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pkey`
[INFO] [stdout]    --> src/mvcc_index/hash_join_heap_chain.rs:568:9
[INFO] [stdout]     |
[INFO] [stdout] 568 |         pkey: &[u8],
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_pkey`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `all_entries`
[INFO] [stdout]     --> src/mvcc_index/hash_join_heap_chain.rs:2568:13
[INFO] [stdout]      |
[INFO] [stdout] 2568 |         let all_entries = heap_chain
[INFO] [stdout]      |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_all_entries`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c_key`
[INFO] [stdout]   --> src/mvcc_index/rust_hash_map/rust_hash_map.rs:27:9
[INFO] [stdout]    |
[INFO] [stdout] 27 |         c_key: crate::prelude::ContainerKey,
[INFO] [stdout]    |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_c_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mem_pool`
[INFO] [stdout]   --> src/mvcc_index/rust_hash_map/rust_hash_map.rs:28:9
[INFO] [stdout]    |
[INFO] [stdout] 28 |         mem_pool: std::sync::Arc<T>,
[INFO] [stdout]    |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_mem_pool`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c_key`
[INFO] [stdout]   --> src/mvcc_index/rust_hash_map/rust_hash_map.rs:39:9
[INFO] [stdout]    |
[INFO] [stdout] 39 |         c_key: crate::prelude::ContainerKey,
[INFO] [stdout]    |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_c_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mem_pool`
[INFO] [stdout]   --> src/mvcc_index/rust_hash_map/rust_hash_map.rs:40:9
[INFO] [stdout]    |
[INFO] [stdout] 40 |         mem_pool: std::sync::Arc<T>,
[INFO] [stdout]    |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_mem_pool`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bucket_num`
[INFO] [stdout]   --> src/mvcc_index/rust_hash_map/rust_hash_map.rs:41:9
[INFO] [stdout]    |
[INFO] [stdout] 41 |         bucket_num: usize,
[INFO] [stdout]    |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bucket_num`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tx_id`
[INFO] [stdout]   --> src/mvcc_index/rust_hash_map/rust_hash_map.rs:56:9
[INFO] [stdout]    |
[INFO] [stdout] 56 |         tx_id: crate::mvcc_index::TxId,
[INFO] [stdout]    |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_tx_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tx_id`
[INFO] [stdout]    --> src/mvcc_index/rust_hash_map/rust_hash_map.rs:115:9
[INFO] [stdout]     |
[INFO] [stdout] 115 |         tx_id: crate::mvcc_index::TxId,
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_tx_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tx_id`
[INFO] [stdout]    --> src/mvcc_index/rust_hash_map/rust_hash_map.rs:138:9
[INFO] [stdout]     |
[INFO] [stdout] 138 |         tx_id: crate::mvcc_index::TxId,
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_tx_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tx_id`
[INFO] [stdout]    --> src/mvcc_index/rust_hash_map/rust_hash_map.rs:161:9
[INFO] [stdout]     |
[INFO] [stdout] 161 |         tx_id: crate::mvcc_index::TxId,
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_tx_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `from_ts`
[INFO] [stdout]    --> src/mvcc_index/rust_hash_map/rust_hash_map.rs:217:9
[INFO] [stdout]     |
[INFO] [stdout] 217 |         from_ts: crate::prelude::Timestamp,
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_from_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `to_ts`
[INFO] [stdout]    --> src/mvcc_index/rust_hash_map/rust_hash_map.rs:218:9
[INFO] [stdout]     |
[INFO] [stdout] 218 |         to_ts: crate::prelude::Timestamp,
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_to_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `safe_ts`
[INFO] [stdout]    --> src/mvcc_index/rust_hash_map/rust_hash_map.rs:242:31
[INFO] [stdout]     |
[INFO] [stdout] 242 |     fn garbage_collect(&self, safe_ts: crate::prelude::Timestamp) -> Result<(), Self::Error> {
[INFO] [stdout]     |                               ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_safe_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ts`
[INFO] [stdout]    --> src/mvcc_index/rust_hash_map/rust_hash_map.rs:291:27
[INFO] [stdout]     |
[INFO] [stdout] 291 |     fn split_at_ts(&self, ts: crate::prelude::Timestamp) -> Result<(), Self::Error> {
[INFO] [stdout]     |                           ^^ help: if this is intentional, prefix it with an underscore: `_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `cnt` is assigned to, but never used
[INFO] [stdout]    --> src/mvcc_index/hash_join_unittest.rs:798:13
[INFO] [stdout]     |
[INFO] [stdout] 798 |         let mut cnt = 0;
[INFO] [stdout]     |             ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_cnt` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `cnt` is never read
[INFO] [stdout]    --> src/mvcc_index/hash_join_unittest.rs:800:13
[INFO] [stdout]     |
[INFO] [stdout] 800 |             cnt += 1;
[INFO] [stdout]     |             ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ts`
[INFO] [stdout]   --> src/mvcc_index/ts_partitioned/ts_partitioned_collection.rs:96:26
[INFO] [stdout]    |
[INFO] [stdout] 96 |     pub fn insert(&self, ts: Timestamp, entry: &MvccEntry) -> Result<(), AccessMethodError> {
[INFO] [stdout]    |                          ^^ help: if this is intentional, prefix it with an underscore: `_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ts`
[INFO] [stdout]    --> src/mvcc_index/ts_partitioned/ts_partitioned_collection.rs:148:26
[INFO] [stdout]     |
[INFO] [stdout] 148 |     pub fn update(&self, ts: Timestamp, entry: &MvccEntry) -> Result<(), AccessMethodError> {
[INFO] [stdout]     |                          ^^ help: if this is intentional, prefix it with an underscore: `_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ts`
[INFO] [stdout]    --> src/mvcc_index/ts_partitioned/ts_partitioned_collection.rs:156:9
[INFO] [stdout]     |
[INFO] [stdout] 156 |         ts: Timestamp,
[INFO] [stdout]     |         ^^ help: if this is intentional, prefix it with an underscore: `_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/mvcc_index/ts_partitioned/ts_partitioned_table.rs:53:13
[INFO] [stdout]    |
[INFO] [stdout] 53 |         for i in 0..num_buckets {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pkey`
[INFO] [stdout]    --> src/mvcc_index/ts_partitioned/ts_partitioned_table.rs:107:35
[INFO] [stdout]     |
[INFO] [stdout] 107 |     fn _update(&self, key: &[u8], pkey: &[u8], entry: &MvccEntry) -> Result<(), AccessMethodError> {
[INFO] [stdout]     |                                   ^^^^ help: if this is intentional, prefix it with an underscore: `_pkey`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pkey`
[INFO] [stdout]    --> src/mvcc_index/ts_partitioned/ts_partitioned_table.rs:122:9
[INFO] [stdout]     |
[INFO] [stdout] 122 |         pkey: &[u8],
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_pkey`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/mvcc_index/ts_partitioned/ts_partitioned_table.rs:266:9
[INFO] [stdout]     |
[INFO] [stdout] 266 |         key: &[u8],
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pkey`
[INFO] [stdout]    --> src/mvcc_index/ts_partitioned/ts_partitioned_table.rs:267:9
[INFO] [stdout]     |
[INFO] [stdout] 267 |         pkey: &[u8],
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_pkey`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ts`
[INFO] [stdout]    --> src/mvcc_index/ts_partitioned/ts_partitioned_table.rs:268:9
[INFO] [stdout]     |
[INFO] [stdout] 268 |         ts: Timestamp,
[INFO] [stdout]     |         ^^ help: if this is intentional, prefix it with an underscore: `_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tx_id`
[INFO] [stdout]    --> src/mvcc_index/ts_partitioned/ts_partitioned_table.rs:269:9
[INFO] [stdout]     |
[INFO] [stdout] 269 |         tx_id: TxId,
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_tx_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `config`
[INFO] [stdout]    --> src/tpcc/delivery_txn.rs:213:16
[INFO] [stdout]     |
[INFO] [stdout] 213 |     pub fn new(config: &TPCCConfig, w_id: u16) -> Self {
[INFO] [stdout]     |                ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `txn_storage`
[INFO] [stdout]    --> src/tpcc/loader.rs:166:5
[INFO] [stdout]     |
[INFO] [stdout] 166 |     txn_storage: &impl TxnStorageTrait,
[INFO] [stdout]     |     ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_txn_storage`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `table_info`
[INFO] [stdout]    --> src/tpcc/loader.rs:167:5
[INFO] [stdout]     |
[INFO] [stdout] 167 |     table_info: &TableInfo,
[INFO] [stdout]     |     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_table_info`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `h_c_w_id`
[INFO] [stdout]    --> src/tpcc/loader.rs:168:5
[INFO] [stdout]     |
[INFO] [stdout] 168 |     h_c_w_id: u16,
[INFO] [stdout]     |     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_h_c_w_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `h_c_d_id`
[INFO] [stdout]    --> src/tpcc/loader.rs:169:5
[INFO] [stdout]     |
[INFO] [stdout] 169 |     h_c_d_id: u8,
[INFO] [stdout]     |     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_h_c_d_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `h_c_id`
[INFO] [stdout]    --> src/tpcc/loader.rs:170:5
[INFO] [stdout]     |
[INFO] [stdout] 170 |     h_c_id: u32,
[INFO] [stdout]     |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_h_c_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `h_w_id`
[INFO] [stdout]    --> src/tpcc/loader.rs:171:5
[INFO] [stdout]     |
[INFO] [stdout] 171 |     h_w_id: u16,
[INFO] [stdout]     |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_h_w_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `h_d_id`
[INFO] [stdout]    --> src/tpcc/loader.rs:172:5
[INFO] [stdout]     |
[INFO] [stdout] 172 |     h_d_id: u8,
[INFO] [stdout]     |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_h_d_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/tpcc/neworder_txn.rs:372:14
[INFO] [stdout]     |
[INFO] [stdout] 372 |         for (i, item) in self.items.iter().enumerate() {
[INFO] [stdout]     |              ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `item`
[INFO] [stdout]    --> src/tpcc/neworder_txn.rs:372:17
[INFO] [stdout]     |
[INFO] [stdout] 372 |         for (i, item) in self.items.iter().enumerate() {
[INFO] [stdout]     |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_item`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `config`
[INFO] [stdout]    --> src/tpcc/orderstatus_txn.rs:229:16
[INFO] [stdout]     |
[INFO] [stdout] 229 |     pub fn new(config: &TPCCConfig, w_id: u16) -> Self {
[INFO] [stdout]     |                ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `h_date`
[INFO] [stdout]   --> src/tpcc/payment_txn.rs:51:13
[INFO] [stdout]    |
[INFO] [stdout] 51 |         let h_date = self.input.h_date;
[INFO] [stdout]    |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_h_date`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/tpcc/tx_utils.rs:412:13
[INFO] [stdout]     |
[INFO] [stdout] 412 |         Err(e) => {
[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/tpcc/tx_utils.rs:454:17
[INFO] [stdout]     |
[INFO] [stdout] 454 |             Err(e) => {
[INFO] [stdout]     |                 ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `reason`
[INFO] [stdout]    --> src/tpcc/tx_utils.rs:553:29
[INFO] [stdout]     |
[INFO] [stdout] 553 |             TPCCStatus::Bug(reason) => {
[INFO] [stdout]     |                             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_reason`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `db_id`
[INFO] [stdout]    --> src/txn_storage/inmem/mod.rs:446:9
[INFO] [stdout]     |
[INFO] [stdout] 446 |         db_id: DatabaseId,
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_db_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c_id`
[INFO] [stdout]    --> src/txn_storage/inmem/mod.rs:447:9
[INFO] [stdout]     |
[INFO] [stdout] 447 |         c_id: ContainerId,
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_c_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/txn_storage/inmem/mod.rs:448:9
[INFO] [stdout]     |
[INFO] [stdout] 448 |         key: Vec<u8>,
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/txn_storage/inmem/mod.rs:449:9
[INFO] [stdout]     |
[INFO] [stdout] 449 |         value: Vec<u8>,
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `txn`
[INFO] [stdout]    --> src/txn_storage/inmem/mod.rs:587:9
[INFO] [stdout]     |
[INFO] [stdout] 587 |         txn: &Self::TxnHandle,
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_txn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c_id`
[INFO] [stdout]    --> src/txn_storage/inmem/mod.rs:588:9
[INFO] [stdout]     |
[INFO] [stdout] 588 |         c_id: ContainerId,
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_c_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/txn_storage/inmem/mod.rs:589:9
[INFO] [stdout]     |
[INFO] [stdout] 589 |         key: K,
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `func`
[INFO] [stdout]    --> src/txn_storage/inmem/mod.rs:590:9
[INFO] [stdout]     |
[INFO] [stdout] 590 |         func: F,
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_func`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/txn_storage/ondisk/mod.rs:86:33
[INFO] [stdout]    |
[INFO] [stdout] 86 |             Storage::AppendOnly(v) => {
[INFO] [stdout]    |                                 ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/txn_storage/ondisk/mod.rs:99:33
[INFO] [stdout]    |
[INFO] [stdout] 99 |             Storage::AppendOnly(v) => {
[INFO] [stdout]    |                                 ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]    --> src/txn_storage/ondisk/mod.rs:112:33
[INFO] [stdout]     |
[INFO] [stdout] 112 |             Storage::AppendOnly(v) => {
[INFO] [stdout]     |                                 ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `db_id`
[INFO] [stdout]    --> src/txn_storage/ondisk/mod.rs:334:9
[INFO] [stdout]     |
[INFO] [stdout] 334 |         db_id: DatabaseId,
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_db_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c_id`
[INFO] [stdout]    --> src/txn_storage/ondisk/mod.rs:335:9
[INFO] [stdout]     |
[INFO] [stdout] 335 |         c_id: ContainerId,
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_c_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/txn_storage/ondisk/mod.rs:336:9
[INFO] [stdout]     |
[INFO] [stdout] 336 |         key: Vec<u8>,
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/txn_storage/ondisk/mod.rs:337:9
[INFO] [stdout]     |
[INFO] [stdout] 337 |         value: Vec<u8>,
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `txn`
[INFO] [stdout]    --> src/txn_storage/ondisk/mod.rs:473:9
[INFO] [stdout]     |
[INFO] [stdout] 473 |         txn: &Self::TxnHandle,
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_txn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c_id`
[INFO] [stdout]    --> src/txn_storage/ondisk/mod.rs:474:9
[INFO] [stdout]     |
[INFO] [stdout] 474 |         c_id: ContainerId,
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_c_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/txn_storage/ondisk/mod.rs:475:9
[INFO] [stdout]     |
[INFO] [stdout] 475 |         key: K,
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `func`
[INFO] [stdout]    --> src/txn_storage/ondisk/mod.rs:476:9
[INFO] [stdout]     |
[INFO] [stdout] 476 |         func: F,
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_func`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `txn`
[INFO] [stdout]    --> src/txn_storage/ondisk/mod.rs:513:9
[INFO] [stdout]     |
[INFO] [stdout] 513 |         txn: &Self::TxnHandle,
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_txn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sss`
[INFO] [stdout]    --> src/txn_storage/ondisk_2pl/mod.rs:734:9
[INFO] [stdout]     |
[INFO] [stdout] 734 |         sss: &SecondaryStorages<M>,
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_sss`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `db_id`
[INFO] [stdout]    --> src/txn_storage/ondisk_2pl/mod.rs:932:9
[INFO] [stdout]     |
[INFO] [stdout] 932 |         db_id: DatabaseId,
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_db_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c_id`
[INFO] [stdout]    --> src/txn_storage/ondisk_2pl/mod.rs:933:9
[INFO] [stdout]     |
[INFO] [stdout] 933 |         c_id: ContainerId,
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_c_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `db_id`
[INFO] [stdout]    --> src/txn_storage/ondisk_2pl/mod.rs:953:31
[INFO] [stdout]     |
[INFO] [stdout] 953 |     fn list_containers(&self, db_id: DatabaseId) -> Result<HashSet<ContainerId>, TxnStorageStatus> {
[INFO] [stdout]     |                               ^^^^^ help: if this is intentional, prefix it with an underscore: `_db_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `db_id`
[INFO] [stdout]    --> src/txn_storage/ondisk_2pl/mod.rs:959:9
[INFO] [stdout]     |
[INFO] [stdout] 959 |         db_id: DatabaseId,
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_db_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `options`
[INFO] [stdout]    --> src/txn_storage/ondisk_2pl/mod.rs:983:9
[INFO] [stdout]     |
[INFO] [stdout] 983 |         options: TxnOptions,
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_options`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `txn`
[INFO] [stdout]     --> src/txn_storage/ondisk_2pl/mod.rs:1015:28
[INFO] [stdout]      |
[INFO] [stdout] 1015 |     fn wait_for_txn(&self, txn: &Self::TxnHandle) -> Result<(), TxnStorageStatus> {
[INFO] [stdout]      |                            ^^^ help: if this is intentional, prefix it with an underscore: `_txn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `txn`
[INFO] [stdout]     --> src/txn_storage/ondisk_2pl/mod.rs:1019:24
[INFO] [stdout]      |
[INFO] [stdout] 1019 |     fn drop_txn(&self, txn: Self::TxnHandle) -> Result<(), TxnStorageStatus> {
[INFO] [stdout]      |                        ^^^ help: if this is intentional, prefix it with an underscore: `_txn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `txn`
[INFO] [stdout]     --> src/txn_storage/ondisk_2pl/mod.rs:1025:9
[INFO] [stdout]      |
[INFO] [stdout] 1025 |         txn: &Self::TxnHandle,
[INFO] [stdout]      |         ^^^ help: if this is intentional, prefix it with an underscore: `_txn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c_id`
[INFO] [stdout]     --> src/txn_storage/ondisk_2pl/mod.rs:1026:9
[INFO] [stdout]      |
[INFO] [stdout] 1026 |         c_id: ContainerId,
[INFO] [stdout]      |         ^^^^ help: if this is intentional, prefix it with an underscore: `_c_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `txn`
[INFO] [stdout]     --> src/txn_storage/ondisk_2pl/mod.rs:1033:9
[INFO] [stdout]      |
[INFO] [stdout] 1033 |         txn: &Self::TxnHandle,
[INFO] [stdout]      |         ^^^ help: if this is intentional, prefix it with an underscore: `_txn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c_id`
[INFO] [stdout]     --> src/txn_storage/ondisk_2pl/mod.rs:1034:9
[INFO] [stdout]      |
[INFO] [stdout] 1034 |         c_id: ContainerId,
[INFO] [stdout]      |         ^^^^ help: if this is intentional, prefix it with an underscore: `_c_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]     --> src/txn_storage/ondisk_2pl/mod.rs:1035:9
[INFO] [stdout]      |
[INFO] [stdout] 1035 |         key: K,
[INFO] [stdout]      |         ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ss`
[INFO] [stdout]     --> src/txn_storage/ondisk_2pl/mod.rs:1049:22
[INFO] [stdout]      |
[INFO] [stdout] 1049 |                 Some(ss) => {
[INFO] [stdout]      |                      ^^ help: if this is intentional, prefix it with an underscore: `_ss`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ss`
[INFO] [stdout]     --> src/txn_storage/ondisk_2pl/mod.rs:1067:22
[INFO] [stdout]      |
[INFO] [stdout] 1067 |                 Some(ss) => {
[INFO] [stdout]      |                      ^^ help: if this is intentional, prefix it with an underscore: `_ss`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ss`
[INFO] [stdout]     --> src/txn_storage/ondisk_2pl/mod.rs:1088:22
[INFO] [stdout]      |
[INFO] [stdout] 1088 |                 Some(ss) => {
[INFO] [stdout]      |                      ^^ help: if this is intentional, prefix it with an underscore: `_ss`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ss`
[INFO] [stdout]     --> src/txn_storage/ondisk_2pl/mod.rs:1107:22
[INFO] [stdout]      |
[INFO] [stdout] 1107 |                 Some(ss) => {
[INFO] [stdout]      |                      ^^ help: if this is intentional, prefix it with an underscore: `_ss`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ss`
[INFO] [stdout]     --> src/txn_storage/ondisk_2pl/mod.rs:1129:22
[INFO] [stdout]      |
[INFO] [stdout] 1129 |                 Some(ss) => {
[INFO] [stdout]      |                      ^^ help: if this is intentional, prefix it with an underscore: `_ss`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ss`
[INFO] [stdout]     --> src/txn_storage/ondisk_2pl/mod.rs:1146:22
[INFO] [stdout]      |
[INFO] [stdout] 1146 |                 Some(ss) => {
[INFO] [stdout]      |                      ^^ help: if this is intentional, prefix it with an underscore: `_ss`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `txn`
[INFO] [stdout]     --> src/txn_storage/ondisk_2pl/mod.rs:1156:9
[INFO] [stdout]      |
[INFO] [stdout] 1156 |         txn: &Self::TxnHandle,
[INFO] [stdout]      |         ^^^ help: if this is intentional, prefix it with an underscore: `_txn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `iter`
[INFO] [stdout]     --> src/txn_storage/ondisk_2pl/mod.rs:1195:36
[INFO] [stdout]      |
[INFO] [stdout] 1195 |     fn drop_iterator_handle(&self, iter: Self::IteratorHandle) -> Result<(), TxnStorageStatus> {
[INFO] [stdout]      |                                    ^^^^ help: if this is intentional, prefix it with an underscore: `_iter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/txn_storage/ondisk_silo/mod.rs:74:33
[INFO] [stdout]    |
[INFO] [stdout] 74 |             Storage::AppendOnly(v) => {
[INFO] [stdout]    |                                 ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/txn_storage/ondisk_silo/mod.rs:87:33
[INFO] [stdout]    |
[INFO] [stdout] 87 |             Storage::AppendOnly(v) => {
[INFO] [stdout]    |                                 ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]    --> src/txn_storage/ondisk_silo/mod.rs:100:33
[INFO] [stdout]     |
[INFO] [stdout] 100 |             Storage::AppendOnly(v) => {
[INFO] [stdout]     |                                 ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `db_id`
[INFO] [stdout]    --> src/txn_storage/txn_storage_trait.rs:189:9
[INFO] [stdout]     |
[INFO] [stdout] 189 |         db_id: DatabaseId,
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_db_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c_id`
[INFO] [stdout]    --> src/txn_storage/txn_storage_trait.rs:190:9
[INFO] [stdout]     |
[INFO] [stdout] 190 |         c_id: ContainerId,
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_c_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `start_ts`
[INFO] [stdout]    --> src/naive_hash_index/naive_hash_table/hash_join_page.rs:424:9
[INFO] [stdout]     |
[INFO] [stdout] 424 |         start_ts: Timestamp,
[INFO] [stdout]     |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_start_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `end_ts`
[INFO] [stdout]    --> src/naive_hash_index/naive_hash_table/hash_join_page.rs:425:9
[INFO] [stdout]     |
[INFO] [stdout] 425 |         end_ts: Timestamp,
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_end_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `slot_prefix`
[INFO] [stdout]    --> src/naive_hash_index/naive_hash_table/hash_join_page.rs:609:13
[INFO] [stdout]     |
[INFO] [stdout] 609 |         let slot_prefix = &slot.pkey_prefix()[..prefix_len];
[INFO] [stdout]     |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_slot_prefix`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/naive_hash_index/naive_hash_table/hash_join_table.rs:61:13
[INFO] [stdout]    |
[INFO] [stdout] 61 |         let mut meta_page = mem_pool.create_new_page_for_write(c_key).unwrap();
[INFO] [stdout]    |             ----^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/naive_hash_index/naive_hash_table/hash_join_table.rs:66:13
[INFO] [stdout]    |
[INFO] [stdout] 66 |         for i in 0..num_buckets {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ts`
[INFO] [stdout]    --> src/naive_hash_index/naive_hash_table/hash_join_table.rs:138:27
[INFO] [stdout]     |
[INFO] [stdout] 138 |     fn split_at_ts(&self, ts: Timestamp) -> Result<(), AccessMethodError> {
[INFO] [stdout]     |                           ^^ help: if this is intentional, prefix it with an underscore: `_ts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/naive_hash_index/naive_mvht.rs:48:13
[INFO] [stdout]    |
[INFO] [stdout] 48 |         let mut vec_updates = Vec::<Record>::new();
[INFO] [stdout]    |             ----^^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `set_offset`, `set_key_size`, and `set_val_size` are never used
[INFO] [stdout]   --> src/access_method/append_only_store/append_only_page.rs:76:16
[INFO] [stdout]    |
[INFO] [stdout] 22 |     impl Slot {
[INFO] [stdout]    |     --------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 76 |         pub fn set_offset(&mut self, offset: u32) {
[INFO] [stdout]    |                ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 84 |         pub fn set_key_size(&mut self, key_size: u32) {
[INFO] [stdout]    |                ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 92 |         pub fn set_val_size(&mut self, val_size: u32) {
[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 `c_key` and `meta_page_id` are never read
[INFO] [stdout]   --> src/access_method/chain/mod.rs:29:5
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub struct HashReadOptimize<T: MemPool> {
[INFO] [stdout]    |            ---------------- fields in this struct
[INFO] [stdout] 28 |     pub mem_pool: Arc<T>,
[INFO] [stdout] 29 |     c_key: ContainerKey,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 30 |     num_buckets: usize,
[INFO] [stdout] 31 |     meta_page_id: PageId, // Stores the number of buckets and all the page ids of the first of the chain
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/access_method/chain/short_key_mvcc_page.rs:404:8
[INFO] [stdout]     |
[INFO] [stdout] 372 | pub trait ReadOptimizedPage {
[INFO] [stdout]     |           ----------------- methods in this trait
[INFO] [stdout] ...
[INFO] [stdout] 404 |     fn set_slot_count(&mut self, slot_count: u32);
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 405 |     fn increment_slot_count(&mut self);
[INFO] [stdout] 406 |     fn decrement_slot_count(&mut self);
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 445 |     fn record(&self, slot_id: u32) -> Record;
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 446 |     fn search_slot(&self, key: &[u8]) -> (bool, u32) {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 458 |     fn delete_slot_at_id(&mut self, slot_id: u32);
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 471 |     fn insert_with_ts(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 477 |     fn insert_at_slot_id_with_ts(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 486 |     fn get_with_ts(&self, key: &[u8], ts: u64) -> Result<&[u8], AccessMethodError>;
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 500 |     fn update_with_ts(&mut self, key: &[u8], val: &[u8], ts: u64) -> Result<(), AccessMethodError>;
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 501 |     fn update_at_slot_id_with_ts(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 530 |     fn delete(&mut self, key: &[u8]) -> Result<(), AccessMethodError>;
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 531 |     fn delete_at_slot_id(&mut self, slot_id: u32) -> Result<(), AccessMethodError>;
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `next_page_id`, `set_next_page_id`, `next_frame_id`, `set_next_frame_id`, `set_slot_count`, and `decrement_slot_count` are never used
[INFO] [stdout]    --> src/access_method/chain/short_key_mvcc_page.rs:103:16
[INFO] [stdout]     |
[INFO] [stdout]  18 |     impl Header {
[INFO] [stdout]     |     ----------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 103 |         pub fn next_page_id(&self) -> PageId {
[INFO] [stdout]     |                ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 107 |         pub fn set_next_page_id(&mut self, next_page_id: PageId) {
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 111 |         pub fn next_frame_id(&self) -> u32 {
[INFO] [stdout]     |                ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 115 |         pub fn set_next_frame_id(&mut self, next_frame_id: u32) {
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 131 |         pub fn set_slot_count(&mut self, slot_count: u32) {
[INFO] [stdout]     |                ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 139 |         pub fn decrement_slot_count(&mut self) {
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new_with_start_ts`, `start_ts`, and `set_start_ts` are never used
[INFO] [stdout]    --> src/access_method/chain/short_key_mvcc_page.rs:260:16
[INFO] [stdout]     |
[INFO] [stdout] 168 |     impl Slot {
[INFO] [stdout]     |     --------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 260 |         pub fn new_with_start_ts(key: &[u8], val: &[u8], start_ts: u64, offset: usize) -> Self {
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 301 |         pub fn start_ts(&self) -> u64 {
[INFO] [stdout]     |                ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 305 |         pub fn set_start_ts(&mut self, start_ts: u64) {
[INFO] [stdout]     |                ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Record` is never constructed
[INFO] [stdout]    --> src/access_method/chain/short_key_mvcc_page.rs:314:16
[INFO] [stdout]     |
[INFO] [stdout] 314 |     pub struct Record {
[INFO] [stdout]     |                ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/access_method/chain/short_key_mvcc_page.rs:320:16
[INFO] [stdout]     |
[INFO] [stdout] 319 |     impl Record {
[INFO] [stdout]     |     ----------- associated items in this implementation
[INFO] [stdout] 320 |         pub fn from_bytes(bytes: &[u8], key_size: u32, val_size: u32) -> Self {
[INFO] [stdout]     |                ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 331 |         pub fn to_bytes(&self) -> Vec<u8> {
[INFO] [stdout]     |                ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 340 |         pub fn new(key: &[u8], val: &[u8]) -> Self {
[INFO] [stdout]     |                ^^^
[INFO] [stdout] ...
[INFO] [stdout] 353 |         pub fn remain_key(&self) -> &[u8] {
[INFO] [stdout]     |                ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 357 |         pub fn val(&self) -> &[u8] {
[INFO] [stdout]     |                ^^^
[INFO] [stdout] ...
[INFO] [stdout] 361 |         pub fn update(&mut self, new_val: &[u8]) {
[INFO] [stdout]     |                ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 365 |         pub fn update_with_merge(&mut self, new_val: &[u8], merge_fn: fn(&[u8], &[u8]) -> Vec<u8>) {
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `c_key` and `meta_page_id` are never read
[INFO] [stdout]   --> src/access_method/hash_fbt/mod.rs:30:5
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub struct HashFosterBtree<T: MemPool> {
[INFO] [stdout]    |            --------------- fields in this struct
[INFO] [stdout] 29 |     pub mem_pool: Arc<T>,
[INFO] [stdout] 30 |     c_key: ContainerKey,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 31 |     num_buckets: usize,
[INFO] [stdout] 32 |     meta_page_id: PageId, // Stores the number of buckets and all the page ids of the root of the foster btrees
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `current` is never read
[INFO] [stdout]    --> src/access_method/hash_fbt/mod.rs:313:5
[INFO] [stdout]     |
[INFO] [stdout] 311 | pub struct HashFosterBtreeOrderedIter<T: Iterator<Item = (Vec<u8>, Vec<u8>)>> {
[INFO] [stdout]     |            -------------------------- field in this struct
[INFO] [stdout] 312 |     scanners: Vec<T>,
[INFO] [stdout] 313 |     current: usize,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `c_key` and `meta_page_id` are never read
[INFO] [stdout]    --> src/access_method/hash_fbt/mod.rs:390:5
[INFO] [stdout]     |
[INFO] [stdout] 388 | pub struct HashFosterBtreeAppendOnly<T: MemPool> {
[INFO] [stdout]     |            ------------------------- fields in this struct
[INFO] [stdout] 389 |     pub mem_pool: Arc<T>,
[INFO] [stdout] 390 |     c_key: ContainerKey,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 391 |     num_buckets: usize,
[INFO] [stdout] 392 |     meta_page_id: PageId, // Stores the number of buckets and all the page ids of the root of the foster btrees
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `to_string` is never used
[INFO] [stdout]    --> src/bp/buffer_pool.rs:240:12
[INFO] [stdout]     |
[INFO] [stdout] 211 | impl RuntimeStats {
[INFO] [stdout]     | ----------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 240 |     pub fn to_string(&self) -> String {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DummyEvictionPolicy` is never constructed
[INFO] [stdout]   --> src/bp/eviction_policy.rs:19:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct DummyEvictionPolicy; // Used for in-memory pool
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `c_key` and `mem_pool` are never read
[INFO] [stdout]   --> src/mvcc_index/dual_heap_hash/chained_hash_bucket_second.rs:29:5
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub struct DualChainBucket<T: MemPool> {
[INFO] [stdout]    |            --------------- fields in this struct
[INFO] [stdout] 29 |     c_key: ContainerKey,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 30 |     mem_pool: Arc<T>,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `meta_page_id` and `meta_frame_id` are never read
[INFO] [stdout]   --> src/mvcc_index/hash_heap/hash_heap_table.rs:37:5
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub struct HeapHashTable<T: MemPool + 'static> {
[INFO] [stdout]    |            ------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 37 |     meta_page_id: PageId,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 38 |     meta_frame_id: AtomicU32,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_simple_delete_different_timestamp` is never used
[INFO] [stdout]    --> src/mvcc_index/hash_join_unittest.rs:723:8
[INFO] [stdout]     |
[INFO] [stdout] 723 |     fn test_simple_delete_different_timestamp<I>()
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `create_key_from_item` is never used
[INFO] [stdout]   --> src/tpcc/record_definitions.rs:37:8
[INFO] [stdout]    |
[INFO] [stdout] 30 | impl ItemKey {
[INFO] [stdout]    | ------------ associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 37 |     fn create_key_from_item(item: &Item) -> Self {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `from_num`, `copy_from`, `get_d_id`, and `get_w_id` are never used
[INFO] [stdout]    --> src/tpcc/record_definitions.rs:228:8
[INFO] [stdout]     |
[INFO] [stdout] 220 | impl CustomerSecondaryKey {
[INFO] [stdout]     | ------------------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 228 |     fn from_num(num: u32) -> Self {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 235 |     fn copy_from(other: &Self) -> Self {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 241 |     fn get_d_id(&self) -> u8 {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 249 |     fn get_w_id(&self) -> u16 {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `o_id`, `d_id`, `w_id`, and `create_key_from_order` are never used
[INFO] [stdout]    --> src/tpcc/record_definitions.rs:325:8
[INFO] [stdout]     |
[INFO] [stdout] 324 | impl OrderKey {
[INFO] [stdout]     | ------------- associated items in this implementation
[INFO] [stdout] 325 |     fn o_id(&self) -> u32 {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 329 |     fn d_id(&self) -> u8 {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 333 |     fn w_id(&self) -> u16 {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 346 |     fn create_key_from_order(o: &Order) -> Self {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `ol_number`, `o_id`, `d_id`, `w_id`, and `create_key_from_orderline` are never used
[INFO] [stdout]    --> src/tpcc/record_definitions.rs:434:8
[INFO] [stdout]     |
[INFO] [stdout] 433 | impl OrderLineKey {
[INFO] [stdout]     | ----------------- associated items in this implementation
[INFO] [stdout] 434 |     fn ol_number(&self) -> u8 {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 438 |     fn o_id(&self) -> u32 {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 442 |     fn d_id(&self) -> u8 {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 446 |     fn w_id(&self) -> u16 {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 462 |     fn create_key_from_orderline(ol: &OrderLine) -> Self {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `create_key_from_new_order` is never used
[INFO] [stdout]    --> src/tpcc/record_definitions.rs:513:8
[INFO] [stdout]     |
[INFO] [stdout] 486 | impl NewOrderKey {
[INFO] [stdout]     | ---------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 513 |     fn create_key_from_new_order(no: &NewOrder) -> Self {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[WARN] too many lines in the log, truncating it
