[INFO] cloning repository https://github.com/eR3R3/LSM-Database
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/eR3R3/LSM-Database" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FeR3R3%2FLSM-Database", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FeR3R3%2FLSM-Database'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] d56721c92c9633d6f39277b8af0773fe16fe6e3e
[INFO] checking eR3R3/LSM-Database against try#1f5783cbeb5da8b38566d718631d016891e9c912 for pr-142704
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FeR3R3%2FLSM-Database" "/workspace/builds/worker-5-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc2/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/eR3R3/LSM-Database on toolchain 1f5783cbeb5da8b38566d718631d016891e9c912
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1f5783cbeb5da8b38566d718631d016891e9c912" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/eR3R3/LSM-Database
[INFO] finished tweaking git repo https://github.com/eR3R3/LSM-Database
[INFO] tweaked toml for git repo https://github.com/eR3R3/LSM-Database written to /workspace/builds/worker-5-tc2/source/Cargo.toml
[INFO] crate git repo https://github.com/eR3R3/LSM-Database 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" "+1f5783cbeb5da8b38566d718631d016891e9c912" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+1f5783cbeb5da8b38566d718631d016891e9c912" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 94e0a38ff3ed5681081266999ec444114cb119f01e63b21208f3d4281e3fea23
[INFO] running `Command { std: "docker" "start" "-a" "94e0a38ff3ed5681081266999ec444114cb119f01e63b21208f3d4281e3fea23", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "94e0a38ff3ed5681081266999ec444114cb119f01e63b21208f3d4281e3fea23", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "94e0a38ff3ed5681081266999ec444114cb119f01e63b21208f3d4281e3fea23", kill_on_drop: false }`
[INFO] [stdout] 94e0a38ff3ed5681081266999ec444114cb119f01e63b21208f3d4281e3fea23
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+1f5783cbeb5da8b38566d718631d016891e9c912" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] afa977fa61e96829ec9707cc2dabb21a4a38501ad901656f46edbd6e7e349a5c
[INFO] running `Command { std: "docker" "start" "-a" "afa977fa61e96829ec9707cc2dabb21a4a38501ad901656f46edbd6e7e349a5c", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.94
[INFO] [stderr]    Compiling unicode-ident v1.0.18
[INFO] [stderr]    Compiling libc v0.2.171
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]    Compiling autocfg v1.4.0
[INFO] [stderr]     Checking cfg-if v1.0.0
[INFO] [stderr]    Compiling version_check v0.9.5
[INFO] [stderr]    Compiling parking_lot_core v0.9.10
[INFO] [stderr]    Compiling getrandom v0.3.2
[INFO] [stderr]    Compiling yansi v1.0.1
[INFO] [stderr]     Checking smallvec v1.14.0
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]     Checking scopeguard v1.2.0
[INFO] [stderr]    Compiling portable-atomic v1.11.0
[INFO] [stderr]    Compiling moka v0.12.10
[INFO] [stderr]    Compiling heck v0.4.1
[INFO] [stderr]    Compiling anyhow v1.0.97
[INFO] [stderr]     Checking aliasable v0.1.3
[INFO] [stderr]     Checking static_assertions v1.1.0
[INFO] [stderr]     Checking tagptr v0.2.0
[INFO] [stderr]     Checking bytes v1.10.1
[INFO] [stderr]    Compiling proc-macro2-diagnostics v0.10.1
[INFO] [stderr]    Compiling lock_api v0.4.12
[INFO] [stderr]     Checking crossbeam-epoch v0.9.18
[INFO] [stderr]     Checking crossbeam-channel v0.5.14
[INFO] [stderr]    Compiling quote v1.0.40
[INFO] [stderr]     Checking crossbeam-skiplist v0.1.3
[INFO] [stderr]    Compiling syn v2.0.100
[INFO] [stderr]     Checking uuid v1.16.0
[INFO] [stderr]     Checking parking_lot v0.12.3
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling ouroboros_macro v0.18.5
[INFO] [stderr]     Checking ouroboros v0.18.5
[INFO] [stderr]     Checking lsm_db v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `Block`
[INFO] [stdout]  --> src/table/iterator.rs:6:20
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::block::{Block, BlockIterator};
[INFO] [stdout]   |                    ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/table.rs:157:59
[INFO] [stdout]     |
[INFO] [stdout] 157 |             .map_or(self.block_meta_offset, |x| x.offset);;
[INFO] [stdout]     |                                                           ^ help: remove this semicolon
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::borrow::Borrow`
[INFO] [stdout]  --> src/block/iterator.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::borrow::Borrow;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/block.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Block`
[INFO] [stdout]  --> src/table/iterator.rs:6:20
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::block::{Block, BlockIterator};
[INFO] [stdout]   |                    ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/table.rs:157:59
[INFO] [stdout]     |
[INFO] [stdout] 157 |             .map_or(self.block_meta_offset, |x| x.offset);;
[INFO] [stdout]     |                                                           ^ help: remove this semicolon
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::borrow::Borrow`
[INFO] [stdout]  --> src/block/iterator.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::borrow::Borrow;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/block.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Read`
[INFO] [stdout]  --> src/table.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::io::Read;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Read`
[INFO] [stdout]  --> src/table.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::io::Read;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `map_bound` is never used
[INFO] [stdout]   --> src/mem_table.rs:12:4
[INFO] [stdout]    |
[INFO] [stdout] 12 | fn map_bound(original: Bound<&[u8]>) -> Bound<Bytes> {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MemTable` is never constructed
[INFO] [stdout]   --> src/mem_table.rs:20:12
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct MemTable {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `create`, `scan`, `get`, `put`, and `approximate_size` are never used
[INFO] [stdout]   --> src/mem_table.rs:32:12
[INFO] [stdout]    |
[INFO] [stdout] 31 | impl MemTable {
[INFO] [stdout]    | ------------- associated items in this implementation
[INFO] [stdout] 32 |     pub fn create(id: usize) -> Self {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 41 |     pub(crate) fn scan(&self, low_bound: Bound<&[u8]>, upper_bound: Bound<&[u8]>) -> MemTableIterator {
[INFO] [stdout]    |                   ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 56 |     pub(crate) fn get(self: &Self, key: Bytes) -> Option<Bytes> {
[INFO] [stdout]    |                   ^^^
[INFO] [stdout] ...
[INFO] [stdout] 60 |     pub(crate) fn put(&self, key: &[u8], value: &[u8]) -> Result<()> {
[INFO] [stdout]    |                   ^^^
[INFO] [stdout] ...
[INFO] [stdout] 67 |     pub(crate) fn approximate_size(&self) -> usize {
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `SkipMapRangeIter` is never used
[INFO] [stdout]   --> src/mem_table.rs:82:6
[INFO] [stdout]    |
[INFO] [stdout] 82 | type SkipMapRangeIter<'a> = crossbeam_skiplist::map::Range<'a, Bytes, (Bound<Bytes>, Bound<Bytes>), Bytes, Bytes>;
[INFO] [stdout]    |      ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `entry_to_item` is never used
[INFO] [stdout]   --> src/mem_table.rs:94:8
[INFO] [stdout]    |
[INFO] [stdout] 93 | impl MemTableIterator {
[INFO] [stdout]    | --------------------- associated function in this implementation
[INFO] [stdout] 94 |     fn entry_to_item(entry: Option<Entry<Bytes, Bytes>>) -> (Bytes, Bytes) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `BlockCache` is never used
[INFO] [stdout]   --> src/lsm_storage.rs:18:10
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub type BlockCache = moka::sync::Cache<(usize, usize), Arc<Block>>;
[INFO] [stdout]    |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LsmStorageState` is never constructed
[INFO] [stdout]   --> src/lsm_storage.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct LsmStorageState {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `LsmStorageState` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LsmStorageConfig` is never constructed
[INFO] [stdout]   --> src/lsm_storage.rs:31:12
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub struct LsmStorageConfig {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LsmStorageInner` is never constructed
[INFO] [stdout]   --> src/lsm_storage.rs:44:12
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub struct LsmStorageInner {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/lsm_storage.rs:61:8
[INFO] [stdout]     |
[INFO] [stdout] 59  | impl LsmStorageInner {
[INFO] [stdout]     | -------------------- methods in this implementation
[INFO] [stdout] 60  |     // it is only currently getting from the memtables
[INFO] [stdout] 61  |     fn get(&self, key: &[u8]) -> Result<Option<Bytes>> {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 83  |     fn put(&self, key: &[u8], value: &[u8]) -> Result<()> {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 94  |     pub fn delete(&self, key: &[u8]) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 106 |     fn try_freeze_memtable(&self, size: usize) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 123 |     fn freeze_memtable(&self) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 141 |     pub(crate) fn next_sst_id(&self) -> usize {
[INFO] [stdout]     |                   ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 146 |     pub fn scan(
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MiniLsm` is never constructed
[INFO] [stdout]    --> src/lsm_storage.rs:166:12
[INFO] [stdout]     |
[INFO] [stdout] 166 | pub struct MiniLsm {}
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BlockMeta` is never constructed
[INFO] [stdout]   --> src/table.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct BlockMeta {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `encode_block_meta` and `decode_block_meta` are never used
[INFO] [stdout]   --> src/table.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 20 | impl BlockMeta {
[INFO] [stdout]    | -------------- associated functions in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 24 |     pub fn encode_block_meta(block_meta: &[BlockMeta], buf: &mut Vec<u8>) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 52 |     pub fn decode_block_meta(mut buf: impl Buf) -> Vec<BlockMeta> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FileObject` is never constructed
[INFO] [stdout]   --> src/table.rs:70:12
[INFO] [stdout]    |
[INFO] [stdout] 70 | pub struct FileObject(Option<File>, u64);
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `read`, `size`, `create`, and `open` are never used
[INFO] [stdout]   --> src/table.rs:73:8
[INFO] [stdout]    |
[INFO] [stdout] 72 | impl FileObject {
[INFO] [stdout]    | --------------- associated items in this implementation
[INFO] [stdout] 73 |     fn read(&self, offset: u64, len: u32) -> Result<Vec<u8>> {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 82 |     pub fn size(&self) -> u64 {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 86 |     pub fn create(path: &Path, data: Vec<u8>) -> Result<Self> {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 98 |     pub fn open(path: &Path) -> Result<Self> {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SsTable` is never constructed
[INFO] [stdout]    --> src/table.rs:105:12
[INFO] [stdout]     |
[INFO] [stdout] 105 | pub struct SsTable {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `open`, `create_meta_only`, `read_block`, `read_block_cache`, `find_block_idx`, and `num_of_blocks` are never used
[INFO] [stdout]    --> src/table.rs:119:8
[INFO] [stdout]     |
[INFO] [stdout] 118 | impl SsTable {
[INFO] [stdout]     | ------------ associated items in this implementation
[INFO] [stdout] 119 |     fn open(file_object: FileObject, block_cache: Option<Arc<BlockCache>>, id: usize) -> Result<Self> {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 137 |     pub fn create_meta_only(id: usize, file_size: u64, first_key: Bytes, last_key: Bytes) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 152 |     fn read_block(&self, idx: usize) -> Result<Arc<Block>> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 163 |     fn read_block_cache(&self, block_idx: usize) -> Result<Arc<Block>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 180 |     fn find_block_idx(&self, key: &[u8]) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 188 |     fn num_of_blocks(&self) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SsTableBuilder` is never constructed
[INFO] [stdout]  --> src/table/builder.rs:9:12
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub struct SsTableBuilder {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `add`, `finish_block`, and `build` are never used
[INFO] [stdout]   --> src/table/builder.rs:19:8
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl SsTableBuilder {
[INFO] [stdout]    | ------------------- associated items in this implementation
[INFO] [stdout] 19 |     fn new(target_block_size: usize) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 30 |     fn add(&mut self, key: &[u8], value: &[u8]) {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 51 |     fn finish_block(&mut self) {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 65 |     pub fn build(
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SsTableIterator` is never constructed
[INFO] [stdout]   --> src/table/iterator.rs:10:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct SsTableIterator {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `create_first_block_iterator_and_seek_to_first_pair`, `create_block_iterator_and_seek_to_key`, `create_and_seek_to_first`, `seek_to_first`, `create_and_seek_to_key`, and `seek_to_key` are never used
[INFO] [stdout]   --> src/table/iterator.rs:17:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl SsTableIterator {
[INFO] [stdout]    | -------------------- associated items in this implementation
[INFO] [stdout] 17 |     pub fn create_first_block_iterator_and_seek_to_first_pair(table: &Arc<SsTable>) -> Result<(usize, BlockIterator)> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 23 |     pub fn create_block_iterator_and_seek_to_key(table: &Arc<SsTable>, key: &[u8]) -> Result<(usize, BlockIterator)> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 44 |     pub fn create_and_seek_to_first(&self, table: Arc<SsTable>) -> Result<Self> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 54 |     pub fn seek_to_first(&mut self) -> Result<()> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 62 |     pub fn create_and_seek_to_key(table: Arc<SsTable>, key: &[u8]) -> Result<Self> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 71 |     pub fn seek_to_key(&mut self, key: &[u8]) -> Result<()> {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `CompactionOption` is never used
[INFO] [stdout]  --> src/compact.rs:1:10
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub enum CompactionOption {
[INFO] [stdout]   |          ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `CompactionController` is never used
[INFO] [stdout]  --> src/compact.rs:5:10
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub enum CompactionController {
[INFO] [stdout]   |          ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SIZEOF_U16` is never used
[INFO] [stdout]  --> src/block.rs:9:18
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub(crate) const SIZEOF_U16: usize = size_of::<u16>();
[INFO] [stdout]   |                  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Block` is never constructed
[INFO] [stdout]   --> src/block.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct Block {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `encode` and `decode` are never used
[INFO] [stdout]   --> src/block.rs:22:12
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl Block {
[INFO] [stdout]    | ---------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 22 |     pub fn encode(&self) -> Bytes {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 33 |     pub fn decode(data: &[u8]) -> Self {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BlockBuilder` is never constructed
[INFO] [stdout]  --> src/block/builder.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct BlockBuilder {
[INFO] [stdout]   |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `estimated_size`, `add`, `is_empty`, and `build` are never used
[INFO] [stdout]   --> src/block/builder.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl BlockBuilder {
[INFO] [stdout]    | ----------------- associated items in this implementation
[INFO] [stdout] 11 |     pub fn new(block_size: usize) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 19 |     fn estimated_size(&self) -> usize {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 25 |     pub fn add(&mut self, key: &[u8], value: &[u8]) -> bool {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 45 |     pub fn is_empty(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 49 |     pub fn build(self) -> Block {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BlockIterator` is never constructed
[INFO] [stdout]  --> src/block/iterator.rs:6:12
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct BlockIterator {
[INFO] [stdout]   |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]   --> src/block/iterator.rs:14:8
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl BlockIterator {
[INFO] [stdout]    | ------------------ associated items in this implementation
[INFO] [stdout] 14 |     fn new(block: Arc<Block>) -> BlockIterator {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 23 |     fn seek_to_offset(&mut self, offset: usize) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 39 |     fn seek_to(&mut self, idx: usize) {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 49 |     pub fn is_valid(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 53 |     pub fn seek_to_first(&mut self) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 57 |     pub fn create_and_seek_to_first(block: Arc<Block>) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 63 |     pub fn seek_to_key(&mut self, key: &[u8]) {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 79 |     pub fn create_and_seek_to_key(block: Arc<Block>, key: &[u8]) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 85 |     pub fn key(&self) -> &[u8] {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 90 |     pub fn value(&self) -> &[u8] {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 95 |     pub fn next(&mut self) {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Manifest` is never constructed
[INFO] [stdout]  --> src/manifest.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub struct Manifest {
[INFO] [stdout]   |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LsmMvccInner` is never constructed
[INFO] [stdout]  --> src/mvcc.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub struct LsmMvccInner {
[INFO] [stdout]   |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Wal` is never constructed
[INFO] [stdout]  --> src/wal.rs:1:19
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub(crate) struct Wal {
[INFO] [stdout]   |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `StorageIterator` is never used
[INFO] [stdout]  --> src/iterator.rs:4:11
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub trait StorageIterator {
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `HeapWrapper` is never constructed
[INFO] [stdout]  --> src/iterator/merge_iterator.rs:8:12
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub struct HeapWrapper<T: StorageIterator>(pub usize, Box<T>);
[INFO] [stdout]   |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MergeIterator` is never constructed
[INFO] [stdout]   --> src/iterator/merge_iterator.rs:38:12
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub struct MergeIterator<T: StorageIterator> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `create` is never used
[INFO] [stdout]   --> src/iterator/merge_iterator.rs:44:19
[INFO] [stdout]    |
[INFO] [stdout] 43 | impl<T: StorageIterator> MergeIterator<T> {
[INFO] [stdout]    | ----------------------------------------- associated function in this implementation
[INFO] [stdout] 44 |     pub(crate) fn create(iters: Vec<Box<T>>) -> Self {
[INFO] [stdout]    |                   ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TwoMergeIterator` is never constructed
[INFO] [stdout]  --> src/iterator/two_merge_iterator.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct TwoMergeIterator<A: StorageIterator, B: StorageIterator> {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `choose_a`, `skip_b`, and `create` are never used
[INFO] [stdout]   --> src/iterator/two_merge_iterator.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout] 9  | impl<A: StorageIterator, B: StorageIterator> TwoMergeIterator<A, B> {
[INFO] [stdout]    | ------------------------------------------------------------------- associated items in this implementation
[INFO] [stdout] 10 |     fn choose_a(a: &A, b: &B) -> bool {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 20 |     fn skip_b(&mut self) -> Result<()> {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 29 |     pub fn create(a: A, b: B) -> Result<Self> {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `LsmIteratorInner` is never used
[INFO] [stdout]  --> src/lsm_iterator.rs:6:6
[INFO] [stdout]   |
[INFO] [stdout] 6 | type LsmIteratorInner = MergeIterator<MemTableIterator>;
[INFO] [stdout]   |      ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LsmIterator` is never constructed
[INFO] [stdout]  --> src/lsm_iterator.rs:8:12
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub struct LsmIterator {
[INFO] [stdout]   |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/lsm_iterator.rs:13:19
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl LsmIterator {
[INFO] [stdout]    | ---------------- associated function in this implementation
[INFO] [stdout] 13 |     pub(crate) fn new(iter: LsmIteratorInner) -> Result<Self> {
[INFO] [stdout]    |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `move_to_non_delete` is never used
[INFO] [stdout]   --> src/lsm_iterator.rs:21:8
[INFO] [stdout]    |
[INFO] [stdout] 20 | impl LsmIterator {
[INFO] [stdout]    | ---------------- method in this implementation
[INFO] [stdout] 21 |     fn move_to_non_delete(&mut self) -> Result<()> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FusedIterator` is never constructed
[INFO] [stdout]   --> src/lsm_iterator.rs:48:12
[INFO] [stdout]    |
[INFO] [stdout] 48 | pub struct FusedIterator<I: StorageIterator> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/lsm_iterator.rs:54:12
[INFO] [stdout]    |
[INFO] [stdout] 53 | impl<I: StorageIterator> FusedIterator<I> {
[INFO] [stdout]    | ----------------------------------------- associated function in this implementation
[INFO] [stdout] 54 |     pub fn new(iter: I) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `map_bound` is never used
[INFO] [stdout]   --> src/mem_table.rs:12:4
[INFO] [stdout]    |
[INFO] [stdout] 12 | fn map_bound(original: Bound<&[u8]>) -> Bound<Bytes> {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MemTable` is never constructed
[INFO] [stdout]   --> src/mem_table.rs:20:12
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct MemTable {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `create`, `scan`, `get`, `put`, and `approximate_size` are never used
[INFO] [stdout]   --> src/mem_table.rs:32:12
[INFO] [stdout]    |
[INFO] [stdout] 31 | impl MemTable {
[INFO] [stdout]    | ------------- associated items in this implementation
[INFO] [stdout] 32 |     pub fn create(id: usize) -> Self {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 41 |     pub(crate) fn scan(&self, low_bound: Bound<&[u8]>, upper_bound: Bound<&[u8]>) -> MemTableIterator {
[INFO] [stdout]    |                   ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 56 |     pub(crate) fn get(self: &Self, key: Bytes) -> Option<Bytes> {
[INFO] [stdout]    |                   ^^^
[INFO] [stdout] ...
[INFO] [stdout] 60 |     pub(crate) fn put(&self, key: &[u8], value: &[u8]) -> Result<()> {
[INFO] [stdout]    |                   ^^^
[INFO] [stdout] ...
[INFO] [stdout] 67 |     pub(crate) fn approximate_size(&self) -> usize {
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `SkipMapRangeIter` is never used
[INFO] [stdout]   --> src/mem_table.rs:82:6
[INFO] [stdout]    |
[INFO] [stdout] 82 | type SkipMapRangeIter<'a> = crossbeam_skiplist::map::Range<'a, Bytes, (Bound<Bytes>, Bound<Bytes>), Bytes, Bytes>;
[INFO] [stdout]    |      ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `entry_to_item` is never used
[INFO] [stdout]   --> src/mem_table.rs:94:8
[INFO] [stdout]    |
[INFO] [stdout] 93 | impl MemTableIterator {
[INFO] [stdout]    | --------------------- associated function in this implementation
[INFO] [stdout] 94 |     fn entry_to_item(entry: Option<Entry<Bytes, Bytes>>) -> (Bytes, Bytes) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `BlockCache` is never used
[INFO] [stdout]   --> src/lsm_storage.rs:18:10
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub type BlockCache = moka::sync::Cache<(usize, usize), Arc<Block>>;
[INFO] [stdout]    |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LsmStorageState` is never constructed
[INFO] [stdout]   --> src/lsm_storage.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct LsmStorageState {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `LsmStorageState` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LsmStorageConfig` is never constructed
[INFO] [stdout]   --> src/lsm_storage.rs:31:12
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub struct LsmStorageConfig {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LsmStorageInner` is never constructed
[INFO] [stdout]   --> src/lsm_storage.rs:44:12
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub struct LsmStorageInner {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/lsm_storage.rs:61:8
[INFO] [stdout]     |
[INFO] [stdout] 59  | impl LsmStorageInner {
[INFO] [stdout]     | -------------------- methods in this implementation
[INFO] [stdout] 60  |     // it is only currently getting from the memtables
[INFO] [stdout] 61  |     fn get(&self, key: &[u8]) -> Result<Option<Bytes>> {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 83  |     fn put(&self, key: &[u8], value: &[u8]) -> Result<()> {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 94  |     pub fn delete(&self, key: &[u8]) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 106 |     fn try_freeze_memtable(&self, size: usize) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 123 |     fn freeze_memtable(&self) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 141 |     pub(crate) fn next_sst_id(&self) -> usize {
[INFO] [stdout]     |                   ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 146 |     pub fn scan(
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MiniLsm` is never constructed
[INFO] [stdout]    --> src/lsm_storage.rs:166:12
[INFO] [stdout]     |
[INFO] [stdout] 166 | pub struct MiniLsm {}
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BlockMeta` is never constructed
[INFO] [stdout]   --> src/table.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct BlockMeta {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `encode_block_meta` and `decode_block_meta` are never used
[INFO] [stdout]   --> src/table.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 20 | impl BlockMeta {
[INFO] [stdout]    | -------------- associated functions in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 24 |     pub fn encode_block_meta(block_meta: &[BlockMeta], buf: &mut Vec<u8>) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 52 |     pub fn decode_block_meta(mut buf: impl Buf) -> Vec<BlockMeta> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FileObject` is never constructed
[INFO] [stdout]   --> src/table.rs:70:12
[INFO] [stdout]    |
[INFO] [stdout] 70 | pub struct FileObject(Option<File>, u64);
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `read`, `size`, `create`, and `open` are never used
[INFO] [stdout]   --> src/table.rs:73:8
[INFO] [stdout]    |
[INFO] [stdout] 72 | impl FileObject {
[INFO] [stdout]    | --------------- associated items in this implementation
[INFO] [stdout] 73 |     fn read(&self, offset: u64, len: u32) -> Result<Vec<u8>> {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 82 |     pub fn size(&self) -> u64 {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 86 |     pub fn create(path: &Path, data: Vec<u8>) -> Result<Self> {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 98 |     pub fn open(path: &Path) -> Result<Self> {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SsTable` is never constructed
[INFO] [stdout]    --> src/table.rs:105:12
[INFO] [stdout]     |
[INFO] [stdout] 105 | pub struct SsTable {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `open`, `create_meta_only`, `read_block`, `read_block_cache`, `find_block_idx`, and `num_of_blocks` are never used
[INFO] [stdout]    --> src/table.rs:119:8
[INFO] [stdout]     |
[INFO] [stdout] 118 | impl SsTable {
[INFO] [stdout]     | ------------ associated items in this implementation
[INFO] [stdout] 119 |     fn open(file_object: FileObject, block_cache: Option<Arc<BlockCache>>, id: usize) -> Result<Self> {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 137 |     pub fn create_meta_only(id: usize, file_size: u64, first_key: Bytes, last_key: Bytes) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 152 |     fn read_block(&self, idx: usize) -> Result<Arc<Block>> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 163 |     fn read_block_cache(&self, block_idx: usize) -> Result<Arc<Block>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 180 |     fn find_block_idx(&self, key: &[u8]) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 188 |     fn num_of_blocks(&self) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SsTableBuilder` is never constructed
[INFO] [stdout]  --> src/table/builder.rs:9:12
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub struct SsTableBuilder {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `add`, `finish_block`, and `build` are never used
[INFO] [stdout]   --> src/table/builder.rs:19:8
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl SsTableBuilder {
[INFO] [stdout]    | ------------------- associated items in this implementation
[INFO] [stdout] 19 |     fn new(target_block_size: usize) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 30 |     fn add(&mut self, key: &[u8], value: &[u8]) {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 51 |     fn finish_block(&mut self) {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 65 |     pub fn build(
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SsTableIterator` is never constructed
[INFO] [stdout]   --> src/table/iterator.rs:10:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct SsTableIterator {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `create_first_block_iterator_and_seek_to_first_pair`, `create_block_iterator_and_seek_to_key`, `create_and_seek_to_first`, `seek_to_first`, `create_and_seek_to_key`, and `seek_to_key` are never used
[INFO] [stdout]   --> src/table/iterator.rs:17:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl SsTableIterator {
[INFO] [stdout]    | -------------------- associated items in this implementation
[INFO] [stdout] 17 |     pub fn create_first_block_iterator_and_seek_to_first_pair(table: &Arc<SsTable>) -> Result<(usize, BlockIterator)> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 23 |     pub fn create_block_iterator_and_seek_to_key(table: &Arc<SsTable>, key: &[u8]) -> Result<(usize, BlockIterator)> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 44 |     pub fn create_and_seek_to_first(&self, table: Arc<SsTable>) -> Result<Self> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 54 |     pub fn seek_to_first(&mut self) -> Result<()> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 62 |     pub fn create_and_seek_to_key(table: Arc<SsTable>, key: &[u8]) -> Result<Self> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 71 |     pub fn seek_to_key(&mut self, key: &[u8]) -> Result<()> {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `CompactionOption` is never used
[INFO] [stdout]  --> src/compact.rs:1:10
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub enum CompactionOption {
[INFO] [stdout]   |          ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `CompactionController` is never used
[INFO] [stdout]  --> src/compact.rs:5:10
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub enum CompactionController {
[INFO] [stdout]   |          ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SIZEOF_U16` is never used
[INFO] [stdout]  --> src/block.rs:9:18
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub(crate) const SIZEOF_U16: usize = size_of::<u16>();
[INFO] [stdout]   |                  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Block` is never constructed
[INFO] [stdout]   --> src/block.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct Block {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `encode` and `decode` are never used
[INFO] [stdout]   --> src/block.rs:22:12
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl Block {
[INFO] [stdout]    | ---------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 22 |     pub fn encode(&self) -> Bytes {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 33 |     pub fn decode(data: &[u8]) -> Self {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BlockBuilder` is never constructed
[INFO] [stdout]  --> src/block/builder.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct BlockBuilder {
[INFO] [stdout]   |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `estimated_size`, `add`, `is_empty`, and `build` are never used
[INFO] [stdout]   --> src/block/builder.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl BlockBuilder {
[INFO] [stdout]    | ----------------- associated items in this implementation
[INFO] [stdout] 11 |     pub fn new(block_size: usize) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 19 |     fn estimated_size(&self) -> usize {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 25 |     pub fn add(&mut self, key: &[u8], value: &[u8]) -> bool {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 45 |     pub fn is_empty(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 49 |     pub fn build(self) -> Block {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BlockIterator` is never constructed
[INFO] [stdout]  --> src/block/iterator.rs:6:12
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct BlockIterator {
[INFO] [stdout]   |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]   --> src/block/iterator.rs:14:8
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl BlockIterator {
[INFO] [stdout]    | ------------------ associated items in this implementation
[INFO] [stdout] 14 |     fn new(block: Arc<Block>) -> BlockIterator {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 23 |     fn seek_to_offset(&mut self, offset: usize) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 39 |     fn seek_to(&mut self, idx: usize) {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 49 |     pub fn is_valid(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 53 |     pub fn seek_to_first(&mut self) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 57 |     pub fn create_and_seek_to_first(block: Arc<Block>) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 63 |     pub fn seek_to_key(&mut self, key: &[u8]) {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 79 |     pub fn create_and_seek_to_key(block: Arc<Block>, key: &[u8]) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 85 |     pub fn key(&self) -> &[u8] {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 90 |     pub fn value(&self) -> &[u8] {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 95 |     pub fn next(&mut self) {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Manifest` is never constructed
[INFO] [stdout]  --> src/manifest.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub struct Manifest {
[INFO] [stdout]   |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LsmMvccInner` is never constructed
[INFO] [stdout]  --> src/mvcc.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub struct LsmMvccInner {
[INFO] [stdout]   |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Wal` is never constructed
[INFO] [stdout]  --> src/wal.rs:1:19
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub(crate) struct Wal {
[INFO] [stdout]   |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `StorageIterator` is never used
[INFO] [stdout]  --> src/iterator.rs:4:11
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub trait StorageIterator {
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `HeapWrapper` is never constructed
[INFO] [stdout]  --> src/iterator/merge_iterator.rs:8:12
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub struct HeapWrapper<T: StorageIterator>(pub usize, Box<T>);
[INFO] [stdout]   |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MergeIterator` is never constructed
[INFO] [stdout]   --> src/iterator/merge_iterator.rs:38:12
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub struct MergeIterator<T: StorageIterator> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `create` is never used
[INFO] [stdout]   --> src/iterator/merge_iterator.rs:44:19
[INFO] [stdout]    |
[INFO] [stdout] 43 | impl<T: StorageIterator> MergeIterator<T> {
[INFO] [stdout]    | ----------------------------------------- associated function in this implementation
[INFO] [stdout] 44 |     pub(crate) fn create(iters: Vec<Box<T>>) -> Self {
[INFO] [stdout]    |                   ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TwoMergeIterator` is never constructed
[INFO] [stdout]  --> src/iterator/two_merge_iterator.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct TwoMergeIterator<A: StorageIterator, B: StorageIterator> {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `choose_a`, `skip_b`, and `create` are never used
[INFO] [stdout]   --> src/iterator/two_merge_iterator.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout] 9  | impl<A: StorageIterator, B: StorageIterator> TwoMergeIterator<A, B> {
[INFO] [stdout]    | ------------------------------------------------------------------- associated items in this implementation
[INFO] [stdout] 10 |     fn choose_a(a: &A, b: &B) -> bool {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 20 |     fn skip_b(&mut self) -> Result<()> {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 29 |     pub fn create(a: A, b: B) -> Result<Self> {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `LsmIteratorInner` is never used
[INFO] [stdout]  --> src/lsm_iterator.rs:6:6
[INFO] [stdout]   |
[INFO] [stdout] 6 | type LsmIteratorInner = MergeIterator<MemTableIterator>;
[INFO] [stdout]   |      ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LsmIterator` is never constructed
[INFO] [stdout]  --> src/lsm_iterator.rs:8:12
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub struct LsmIterator {
[INFO] [stdout]   |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/lsm_iterator.rs:13:19
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl LsmIterator {
[INFO] [stdout]    | ---------------- associated function in this implementation
[INFO] [stdout] 13 |     pub(crate) fn new(iter: LsmIteratorInner) -> Result<Self> {
[INFO] [stdout]    |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `move_to_non_delete` is never used
[INFO] [stdout]   --> src/lsm_iterator.rs:21:8
[INFO] [stdout]    |
[INFO] [stdout] 20 | impl LsmIterator {
[INFO] [stdout]    | ---------------- method in this implementation
[INFO] [stdout] 21 |     fn move_to_non_delete(&mut self) -> Result<()> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FusedIterator` is never constructed
[INFO] [stdout]   --> src/lsm_iterator.rs:48:12
[INFO] [stdout]    |
[INFO] [stdout] 48 | pub struct FusedIterator<I: StorageIterator> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/lsm_iterator.rs:54:12
[INFO] [stdout]    |
[INFO] [stdout] 53 | impl<I: StorageIterator> FusedIterator<I> {
[INFO] [stdout]    | ----------------------------------------- associated function in this implementation
[INFO] [stdout] 54 |     pub fn new(iter: I) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/main.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/main.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 12.49s
[INFO] running `Command { std: "docker" "inspect" "afa977fa61e96829ec9707cc2dabb21a4a38501ad901656f46edbd6e7e349a5c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "afa977fa61e96829ec9707cc2dabb21a4a38501ad901656f46edbd6e7e349a5c", kill_on_drop: false }`
[INFO] [stdout] afa977fa61e96829ec9707cc2dabb21a4a38501ad901656f46edbd6e7e349a5c
