[INFO] updating cached repository PavelZaytsev/sstable [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/PavelZaytsev/sstable [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/PavelZaytsev/sstable" "work/ex/pr-62849/sources/master#435236b8877cdb98c82eaebfb7887782277265c5/gh/PavelZaytsev/sstable"` [INFO] [stderr] Cloning into 'work/ex/pr-62849/sources/master#435236b8877cdb98c82eaebfb7887782277265c5/gh/PavelZaytsev/sstable'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/PavelZaytsev/sstable" "work/ex/pr-62849/sources/try#b5c7f157c20453dde8d47371abe73b32351b4e7f/gh/PavelZaytsev/sstable"` [INFO] [stderr] Cloning into 'work/ex/pr-62849/sources/try#b5c7f157c20453dde8d47371abe73b32351b4e7f/gh/PavelZaytsev/sstable'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] ca83b55f1eba71784f4e39e30facef1edf93242c [INFO] sha for GitHub repo PavelZaytsev/sstable: ca83b55f1eba71784f4e39e30facef1edf93242c [INFO] validating manifest of PavelZaytsev/sstable on toolchain master#435236b8877cdb98c82eaebfb7887782277265c5 [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+435236b8877cdb98c82eaebfb7887782277265c5-alt" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of PavelZaytsev/sstable on toolchain try#b5c7f157c20453dde8d47371abe73b32351b4e7f [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+b5c7f157c20453dde8d47371abe73b32351b4e7f-alt" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing PavelZaytsev/sstable [INFO] finished frobbing PavelZaytsev/sstable [INFO] frobbed toml for PavelZaytsev/sstable written to work/ex/pr-62849/sources/master#435236b8877cdb98c82eaebfb7887782277265c5/gh/PavelZaytsev/sstable/Cargo.toml [INFO] started frobbing PavelZaytsev/sstable [INFO] finished frobbing PavelZaytsev/sstable [INFO] frobbed toml for PavelZaytsev/sstable written to work/ex/pr-62849/sources/try#b5c7f157c20453dde8d47371abe73b32351b4e7f/gh/PavelZaytsev/sstable/Cargo.toml [INFO] crate PavelZaytsev/sstable already has a lockfile, it will not be regenerated [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+435236b8877cdb98c82eaebfb7887782277265c5-alt" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+b5c7f157c20453dde8d47371abe73b32351b4e7f-alt" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] checking PavelZaytsev/sstable against try#b5c7f157c20453dde8d47371abe73b32351b4e7f for pr-62849 [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/pr-62849/worker-3/try#b5c7f157c20453dde8d47371abe73b32351b4e7f:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/pr-62849/sources/try#b5c7f157c20453dde8d47371abe73b32351b4e7f/gh/PavelZaytsev/sstable:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+b5c7f157c20453dde8d47371abe73b32351b4e7f-alt" "check" "--frozen" "--all" "--all-targets"` [INFO] [stdout] 79240a5a7bef1fb573c9c481f5391f9cd320a15459c943b1ead87d38b901f54b [INFO] running `"docker" "start" "-a" "79240a5a7bef1fb573c9c481f5391f9cd320a15459c943b1ead87d38b901f54b"` [INFO] [stderr] Compiling rand v0.6.5 [INFO] [stderr] Compiling num-traits v0.2.7 [INFO] [stderr] Checking wait-timeout v0.2.0 [INFO] [stderr] Checking serde v1.0.91 [INFO] [stderr] Checking tempfile v3.0.8 [INFO] [stderr] Checking rusty-fork v0.2.2 [INFO] [stderr] Checking proptest v0.9.4 [INFO] [stderr] Checking bincode v1.1.3 [INFO] [stderr] Checking sstable v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: unused import: `std::fs::File` [INFO] [stderr] --> src/main.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use std::fs::File; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::collections::HashMap` [INFO] [stderr] --> src/streamlog.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use std::collections::HashMap; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::io` [INFO] [stderr] --> src/streamlog.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use std::io; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::error` [INFO] [stderr] --> src/streamlog.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use std::error; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::hash::Hash` [INFO] [stderr] --> src/streamlog.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | use std::hash::Hash; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::cmp::Eq` [INFO] [stderr] --> src/streamlog.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | use std::cmp::Eq; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::fs` [INFO] [stderr] --> src/streamlog.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 9 | use std::fs; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::streamlog::errors::IndexError` [INFO] [stderr] --> src/streamlog.rs:15:5 [INFO] [stderr] | [INFO] [stderr] 15 | use crate::streamlog::errors::IndexError; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Deserialize`, `de` [INFO] [stderr] --> src/streamlog.rs:16:13 [INFO] [stderr] | [INFO] [stderr] 16 | use serde::{de, Serialize, Deserialize}; [INFO] [stderr] | ^^ ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `deserialize`, `serialize` [INFO] [stderr] --> src/streamlog.rs:18:15 [INFO] [stderr] | [INFO] [stderr] 18 | use bincode::{serialize, deserialize}; [INFO] [stderr] | ^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `streamlog::FileSegment` [INFO] [stderr] --> src/main.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use streamlog::FileSegment; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `deserialize`, `serialize` [INFO] [stderr] --> src/main.rs:6:15 [INFO] [stderr] | [INFO] [stderr] 6 | use bincode::{serialize, deserialize}; [INFO] [stderr] | ^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Deserialize`, `Serialize` [INFO] [stderr] --> src/main.rs:7:13 [INFO] [stderr] | [INFO] [stderr] 7 | use serde::{Serialize, Deserialize}; [INFO] [stderr] | ^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::io::BufWriter` [INFO] [stderr] --> src/main.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | use std::io::BufWriter; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Empty`, `Node` [INFO] [stderr] --> src/main.rs:9:37 [INFO] [stderr] | [INFO] [stderr] 9 | use rbt::red_black_tree::NodeType::{Node, Empty}; [INFO] [stderr] | ^^^^ ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `rbt::red_black_tree::RBT` [INFO] [stderr] --> src/main.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | use rbt::red_black_tree::RBT; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `core::borrow::Borrow` [INFO] [stderr] --> src/rbt.rs:7:9 [INFO] [stderr] | [INFO] [stderr] 7 | use core::borrow::Borrow; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around function argument [INFO] [stderr] --> src/rbt.rs:112:34 [INFO] [stderr] | [INFO] [stderr] 112 | (Rc::new((NodeType::path_copy_node(left))), Rc::new(right.add(my_key, my_value))) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::slice::Iter` [INFO] [stderr] --> src/main.rs:14:5 [INFO] [stderr] | [INFO] [stderr] 14 | use std::slice::Iter; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::rc::Rc` [INFO] [stderr] --> src/main.rs:15:5 [INFO] [stderr] | [INFO] [stderr] 15 | use std::rc::Rc; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `current_size` [INFO] [stderr] --> src/streamlog.rs:69:30 [INFO] [stderr] | [INFO] [stderr] 69 | Memtable { tree, current_size } => { [INFO] [stderr] | ^^^^^^^^^^^^ help: try ignoring the field: `current_size: _` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `tree` [INFO] [stderr] --> src/streamlog.rs:76:27 [INFO] [stderr] | [INFO] [stderr] 76 | SparseIndex { tree, segment: our_segment, limit, index_size_ratio } => [INFO] [stderr] | ^^^^ help: try ignoring the field: `tree: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `current_size` [INFO] [stderr] --> src/streamlog.rs:97:30 [INFO] [stderr] | [INFO] [stderr] 97 | Memtable { tree, current_size } => tree.find(key), [INFO] [stderr] | ^^^^^^^^^^^^ help: try ignoring the field: `current_size: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `index_size_ratio` [INFO] [stderr] --> src/streamlog.rs:98:49 [INFO] [stderr] | [INFO] [stderr] 98 | SparseIndex { tree, segment, limit, index_size_ratio } => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try ignoring the field: `index_size_ratio: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `limit` [INFO] [stderr] --> src/streamlog.rs:98:42 [INFO] [stderr] | [INFO] [stderr] 98 | SparseIndex { tree, segment, limit, index_size_ratio } => { [INFO] [stderr] | ^^^^^ help: try ignoring the field: `limit: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `segment` [INFO] [stderr] --> src/streamlog.rs:98:33 [INFO] [stderr] | [INFO] [stderr] 98 | SparseIndex { tree, segment, limit, index_size_ratio } => { [INFO] [stderr] | ^^^^^^^ help: try ignoring the field: `segment: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `color` [INFO] [stderr] --> src/streamlog.rs:144:45 [INFO] [stderr] | [INFO] [stderr] 144 | Node { key, value, left, right, color } => { [INFO] [stderr] | ^^^^^ help: try ignoring the field: `color: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `color1` [INFO] [stderr] --> src/rbt.rs:262:32 [INFO] [stderr] | [INFO] [stderr] 262 | color: color1 [INFO] [stderr] | ^^^^^^ help: consider prefixing with an underscore: `_color1` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `color2` [INFO] [stderr] --> src/rbt.rs:269:36 [INFO] [stderr] | [INFO] [stderr] 269 | color: color2 [INFO] [stderr] | ^^^^^^ help: consider prefixing with an underscore: `_color2` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `key_left` [INFO] [stderr] --> src/rbt.rs:117:38 [INFO] [stderr] | [INFO] [stderr] 117 | (Node { key: key_left, value: value_left, left: lefts_left, right: lefts_right, color: lefts_color }, [INFO] [stderr] | ^^^^^^^^ help: consider prefixing with an underscore: `_key_left` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `key_right` [INFO] [stderr] --> src/rbt.rs:118:41 [INFO] [stderr] | [INFO] [stderr] 118 | Node { key: key_right, value: value_right, left: rights_left, right: rights_right, color: rights_color }) => { [INFO] [stderr] | ^^^^^^^^^ help: consider prefixing with an underscore: `_key_right` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `lefts_right` [INFO] [stderr] --> src/rbt.rs:117:92 [INFO] [stderr] | [INFO] [stderr] 117 | (Node { key: key_left, value: value_left, left: lefts_left, right: lefts_right, color: lefts_color }, [INFO] [stderr] | ^^^^^^^^^^^ help: consider prefixing with an underscore: `_lefts_right` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `rights_left` [INFO] [stderr] --> src/rbt.rs:118:78 [INFO] [stderr] | [INFO] [stderr] 118 | Node { key: key_right, value: value_right, left: rights_left, right: rights_right, color: rights_color }) => { [INFO] [stderr] | ^^^^^^^^^^^ help: consider prefixing with an underscore: `_rights_left` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `rights_right` [INFO] [stderr] --> src/rbt.rs:118:98 [INFO] [stderr] | [INFO] [stderr] 118 | Node { key: key_right, value: value_right, left: rights_left, right: rights_right, color: rights_color }) => { [INFO] [stderr] | ^^^^^^^^^^^^ help: consider prefixing with an underscore: `_rights_right` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `value_left` [INFO] [stderr] --> src/rbt.rs:117:55 [INFO] [stderr] | [INFO] [stderr] 117 | (Node { key: key_left, value: value_left, left: lefts_left, right: lefts_right, color: lefts_color }, [INFO] [stderr] | ^^^^^^^^^^ help: consider prefixing with an underscore: `_value_left` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `value_right` [INFO] [stderr] --> src/rbt.rs:118:59 [INFO] [stderr] | [INFO] [stderr] 118 | Node { key: key_right, value: value_right, left: rights_left, right: rights_right, color: rights_color }) => { [INFO] [stderr] | ^^^^^^^^^^^ help: consider prefixing with an underscore: `_value_right` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `key_left` [INFO] [stderr] --> src/rbt.rs:134:38 [INFO] [stderr] | [INFO] [stderr] 134 | (Node { key: key_left, value: value_left, left: lefts_left, right: lefts_right, color: lefts_color }, Empty) => { [INFO] [stderr] | ^^^^^^^^ help: consider prefixing with an underscore: `_key_left` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `lefts_right` [INFO] [stderr] --> src/rbt.rs:134:92 [INFO] [stderr] | [INFO] [stderr] 134 | (Node { key: key_left, value: value_left, left: lefts_left, right: lefts_right, color: lefts_color }, Empty) => { [INFO] [stderr] | ^^^^^^^^^^^ help: consider prefixing with an underscore: `_lefts_right` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `value_left` [INFO] [stderr] --> src/rbt.rs:134:55 [INFO] [stderr] | [INFO] [stderr] 134 | (Node { key: key_left, value: value_left, left: lefts_left, right: lefts_right, color: lefts_color }, Empty) => { [INFO] [stderr] | ^^^^^^^^^^ help: consider prefixing with an underscore: `_value_left` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `key_right` [INFO] [stderr] --> src/rbt.rs:146:45 [INFO] [stderr] | [INFO] [stderr] 146 | (Empty, Node { key: key_right, value: value_right, left: rights_left, right: rights_right, color: rights_color }) => { [INFO] [stderr] | ^^^^^^^^^ help: consider prefixing with an underscore: `_key_right` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `rights_left` [INFO] [stderr] --> src/rbt.rs:146:82 [INFO] [stderr] | [INFO] [stderr] 146 | (Empty, Node { key: key_right, value: value_right, left: rights_left, right: rights_right, color: rights_color }) => { [INFO] [stderr] | ^^^^^^^^^^^ help: consider prefixing with an underscore: `_rights_left` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `rights_right` [INFO] [stderr] --> src/rbt.rs:146:102 [INFO] [stderr] | [INFO] [stderr] 146 | (Empty, Node { key: key_right, value: value_right, left: rights_left, right: rights_right, color: rights_color }) => { [INFO] [stderr] | ^^^^^^^^^^^^ help: consider prefixing with an underscore: `_rights_right` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `value_right` [INFO] [stderr] --> src/rbt.rs:146:63 [INFO] [stderr] | [INFO] [stderr] 146 | (Empty, Node { key: key_right, value: value_right, left: rights_left, right: rights_right, color: rights_color }) => { [INFO] [stderr] | ^^^^^^^^^^^ help: consider prefixing with an underscore: `_value_right` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `value` [INFO] [stderr] --> src/rbt.rs:165:29 [INFO] [stderr] | [INFO] [stderr] 165 | Node { key, value, left, right, .. } => { [INFO] [stderr] | ^^^^^ help: try ignoring the field: `value: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `right` [INFO] [stderr] --> src/rbt.rs:215:42 [INFO] [stderr] | [INFO] [stderr] 215 | Node { key, value, left, right, color } => { [INFO] [stderr] | ^^^^^ help: try ignoring the field: `right: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `left` [INFO] [stderr] --> src/rbt.rs:224:36 [INFO] [stderr] | [INFO] [stderr] 224 | Node { key, value, left, right, color } => { [INFO] [stderr] | ^^^^ help: try ignoring the field: `left: _` [INFO] [stderr] [INFO] [stderr] warning: private type `streamlog::SparseIndexEntry` in public interface (error E0446) [INFO] [stderr] --> src/streamlog.rs:56:19 [INFO] [stderr] | [INFO] [stderr] 56 | SparseIndex { tree: RBT, segment: S, limit: u8, index_size_ratio: f32 }, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(private_in_public)]` on by default [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] = note: for more information, see issue #34537 [INFO] [stderr] [INFO] [stderr] warning: field is never used: `name` [INFO] [stderr] --> src/streamlog.rs:46:5 [INFO] [stderr] | [INFO] [stderr] 46 | name: String, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: enum is never used: `SSTableObject` [INFO] [stderr] --> src/streamlog.rs:52:1 [INFO] [stderr] | [INFO] [stderr] 52 | / pub enum SSTableObject { [INFO] [stderr] 55 | | Memtable { tree: RBT, current_size: usize }, [INFO] [stderr] 56 | | SparseIndex { tree: RBT, segment: S, limit: u8, index_size_ratio: f32 }, [INFO] [stderr] 57 | | } [INFO] [stderr] | |_^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new` [INFO] [stderr] --> src/streamlog.rs:62:5 [INFO] [stderr] | [INFO] [stderr] 62 | pub fn new(&self) -> SSTableObject { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `convert_to_sparse_index` [INFO] [stderr] --> src/streamlog.rs:67:5 [INFO] [stderr] | [INFO] [stderr] 67 | pub fn convert_to_sparse_index(&self, mut segment: S, limit: u8, index_size_ratio: f32) -> SSTableObject { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `write` [INFO] [stderr] --> src/streamlog.rs:81:5 [INFO] [stderr] | [INFO] [stderr] 81 | pub fn write(self, key: K, value: V) -> SSTableObject { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `read` [INFO] [stderr] --> src/streamlog.rs:95:5 [INFO] [stderr] | [INFO] [stderr] 95 | pub fn read(&mut self, key: K) -> Option { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `search` [INFO] [stderr] --> src/streamlog.rs:111:5 [INFO] [stderr] | [INFO] [stderr] 111 | fn search(&mut self, s: u32, e: u32, k: K, meta_vector: &Vec) -> Option { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `walk_and_populate` [INFO] [stderr] --> src/streamlog.rs:141:5 [INFO] [stderr] | [INFO] [stderr] 141 | fn walk_and_populate(&self, node: &NodeType, tree: RBT, segment: &mut S, index_size: u32, current_index_size: u32) -> RBT { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `add_or_append` [INFO] [stderr] --> src/streamlog.rs:162:5 [INFO] [stderr] | [INFO] [stderr] 162 | fn add_or_append(segment: &mut S, tree: RBT, key: K, value: V, append: bool) -> RBT { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `IndexError` [INFO] [stderr] --> src/streamlog.rs:210:5 [INFO] [stderr] | [INFO] [stderr] 210 | pub struct IndexError { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `node_exists` [INFO] [stderr] --> src/rbt.rs:162:9 [INFO] [stderr] | [INFO] [stderr] 162 | pub fn node_exists(&self, my_key: &K) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `find_max` [INFO] [stderr] --> src/rbt.rs:177:9 [INFO] [stderr] | [INFO] [stderr] 177 | fn find_max(&self) -> NodeType { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `find_lower_bound_h` [INFO] [stderr] --> src/rbt.rs:190:9 [INFO] [stderr] | [INFO] [stderr] 190 | fn find_lower_bound_h(&self, my_key: K, acc: NodeType) -> NodeType { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `find_lower_bound_value` [INFO] [stderr] --> src/rbt.rs:208:9 [INFO] [stderr] | [INFO] [stderr] 208 | pub fn find_lower_bound_value(&self, my_key: K) -> NodeType { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `add_right_child` [INFO] [stderr] --> src/rbt.rs:212:9 [INFO] [stderr] | [INFO] [stderr] 212 | pub fn add_right_child(&self, rc: &Rc>) -> NodeType { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `add_left_child` [INFO] [stderr] --> src/rbt.rs:221:9 [INFO] [stderr] | [INFO] [stderr] 221 | pub fn add_left_child(&self, lc: &Rc>) -> NodeType { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `add_children` [INFO] [stderr] --> src/rbt.rs:230:9 [INFO] [stderr] | [INFO] [stderr] 230 | pub fn add_children(&self, lc: &Rc>, rc: &Rc>) -> NodeType { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `find` [INFO] [stderr] --> src/rbt.rs:234:9 [INFO] [stderr] | [INFO] [stderr] 234 | pub fn find(&self, my_key: &K) -> NodeType { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new` [INFO] [stderr] --> src/rbt.rs:291:9 [INFO] [stderr] | [INFO] [stderr] 291 | pub fn new() -> RBT { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new_from` [INFO] [stderr] --> src/rbt.rs:295:9 [INFO] [stderr] | [INFO] [stderr] 295 | pub fn new_from(tree: &RBT) -> RBT { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `add` [INFO] [stderr] --> src/rbt.rs:304:9 [INFO] [stderr] | [INFO] [stderr] 304 | pub fn add(&self, key: K, value: V) -> RBT { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `get_smaller_value` [INFO] [stderr] --> src/rbt.rs:308:9 [INFO] [stderr] | [INFO] [stderr] 308 | pub fn get_smaller_value(&self, my_key: K) -> Option { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `find` [INFO] [stderr] --> src/rbt.rs:318:9 [INFO] [stderr] | [INFO] [stderr] 318 | pub fn find(&self, my_key: K) -> Option { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/streamlog.rs:123:21 [INFO] [stderr] | [INFO] [stderr] 123 | segment.read_to_buffer(info.offset as u64, key_buf); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_must_use)]` on by default [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/streamlog.rs:132:25 [INFO] [stderr] | [INFO] [stderr] 132 | segment.read_to_buffer(info.offset + info.key_size as u64, value_buf); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::fs::File` [INFO] [stderr] --> src/main.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use std::fs::File; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::collections::HashMap` [INFO] [stderr] --> src/streamlog.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use std::collections::HashMap; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::io` [INFO] [stderr] --> src/streamlog.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use std::io; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::error` [INFO] [stderr] --> src/streamlog.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use std::error; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::hash::Hash` [INFO] [stderr] --> src/streamlog.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | use std::hash::Hash; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::cmp::Eq` [INFO] [stderr] --> src/streamlog.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | use std::cmp::Eq; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::fs` [INFO] [stderr] --> src/streamlog.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 9 | use std::fs; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::streamlog::errors::IndexError` [INFO] [stderr] --> src/streamlog.rs:15:5 [INFO] [stderr] | [INFO] [stderr] 15 | use crate::streamlog::errors::IndexError; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Deserialize`, `de` [INFO] [stderr] --> src/streamlog.rs:16:13 [INFO] [stderr] | [INFO] [stderr] 16 | use serde::{de, Serialize, Deserialize}; [INFO] [stderr] | ^^ ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `deserialize`, `serialize` [INFO] [stderr] --> src/streamlog.rs:18:15 [INFO] [stderr] | [INFO] [stderr] 18 | use bincode::{serialize, deserialize}; [INFO] [stderr] | ^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `streamlog::FileSegment` [INFO] [stderr] --> src/main.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use streamlog::FileSegment; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `deserialize`, `serialize` [INFO] [stderr] --> src/main.rs:6:15 [INFO] [stderr] | [INFO] [stderr] 6 | use bincode::{serialize, deserialize}; [INFO] [stderr] | ^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Deserialize`, `Serialize` [INFO] [stderr] --> src/main.rs:7:13 [INFO] [stderr] | [INFO] [stderr] 7 | use serde::{Serialize, Deserialize}; [INFO] [stderr] | ^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::io::BufWriter` [INFO] [stderr] --> src/main.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | use std::io::BufWriter; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Empty`, `Node` [INFO] [stderr] --> src/main.rs:9:37 [INFO] [stderr] | [INFO] [stderr] 9 | use rbt::red_black_tree::NodeType::{Node, Empty}; [INFO] [stderr] | ^^^^ ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `rbt::red_black_tree::RBT` [INFO] [stderr] --> src/main.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | use rbt::red_black_tree::RBT; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `core::borrow::Borrow` [INFO] [stderr] --> src/rbt.rs:7:9 [INFO] [stderr] | [INFO] [stderr] 7 | use core::borrow::Borrow; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around function argument [INFO] [stderr] --> src/rbt.rs:112:34 [INFO] [stderr] | [INFO] [stderr] 112 | (Rc::new((NodeType::path_copy_node(left))), Rc::new(right.add(my_key, my_value))) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `proptest::prelude::*` [INFO] [stderr] --> src/rbt.rs:335:9 [INFO] [stderr] | [INFO] [stderr] 335 | use proptest::prelude::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::slice::Iter` [INFO] [stderr] --> src/main.rs:14:5 [INFO] [stderr] | [INFO] [stderr] 14 | use std::slice::Iter; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::rc::Rc` [INFO] [stderr] --> src/main.rs:15:5 [INFO] [stderr] | [INFO] [stderr] 15 | use std::rc::Rc; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `current_size` [INFO] [stderr] --> src/streamlog.rs:69:30 [INFO] [stderr] | [INFO] [stderr] 69 | Memtable { tree, current_size } => { [INFO] [stderr] | ^^^^^^^^^^^^ help: try ignoring the field: `current_size: _` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `tree` [INFO] [stderr] --> src/streamlog.rs:76:27 [INFO] [stderr] | [INFO] [stderr] 76 | SparseIndex { tree, segment: our_segment, limit, index_size_ratio } => [INFO] [stderr] | ^^^^ help: try ignoring the field: `tree: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `current_size` [INFO] [stderr] --> src/streamlog.rs:97:30 [INFO] [stderr] | [INFO] [stderr] 97 | Memtable { tree, current_size } => tree.find(key), [INFO] [stderr] | ^^^^^^^^^^^^ help: try ignoring the field: `current_size: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `index_size_ratio` [INFO] [stderr] --> src/streamlog.rs:98:49 [INFO] [stderr] | [INFO] [stderr] 98 | SparseIndex { tree, segment, limit, index_size_ratio } => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try ignoring the field: `index_size_ratio: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `limit` [INFO] [stderr] --> src/streamlog.rs:98:42 [INFO] [stderr] | [INFO] [stderr] 98 | SparseIndex { tree, segment, limit, index_size_ratio } => { [INFO] [stderr] | ^^^^^ help: try ignoring the field: `limit: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `segment` [INFO] [stderr] --> src/streamlog.rs:98:33 [INFO] [stderr] | [INFO] [stderr] 98 | SparseIndex { tree, segment, limit, index_size_ratio } => { [INFO] [stderr] | ^^^^^^^ help: try ignoring the field: `segment: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `color` [INFO] [stderr] --> src/streamlog.rs:144:45 [INFO] [stderr] | [INFO] [stderr] 144 | Node { key, value, left, right, color } => { [INFO] [stderr] | ^^^^^ help: try ignoring the field: `color: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `f` [INFO] [stderr] --> src/streamlog.rs:344:13 [INFO] [stderr] | [INFO] [stderr] 344 | let f: FileSegment = SegmentLike::new(file_name); [INFO] [stderr] | ^ help: consider prefixing with an underscore: `_f` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `color1` [INFO] [stderr] --> src/rbt.rs:262:32 [INFO] [stderr] | [INFO] [stderr] 262 | color: color1 [INFO] [stderr] | ^^^^^^ help: consider prefixing with an underscore: `_color1` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `color2` [INFO] [stderr] --> src/rbt.rs:269:36 [INFO] [stderr] | [INFO] [stderr] 269 | color: color2 [INFO] [stderr] | ^^^^^^ help: consider prefixing with an underscore: `_color2` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `key_left` [INFO] [stderr] --> src/rbt.rs:117:38 [INFO] [stderr] | [INFO] [stderr] 117 | (Node { key: key_left, value: value_left, left: lefts_left, right: lefts_right, color: lefts_color }, [INFO] [stderr] | ^^^^^^^^ help: consider prefixing with an underscore: `_key_left` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `key_right` [INFO] [stderr] --> src/rbt.rs:118:41 [INFO] [stderr] | [INFO] [stderr] 118 | Node { key: key_right, value: value_right, left: rights_left, right: rights_right, color: rights_color }) => { [INFO] [stderr] | ^^^^^^^^^ help: consider prefixing with an underscore: `_key_right` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `lefts_right` [INFO] [stderr] --> src/rbt.rs:117:92 [INFO] [stderr] | [INFO] [stderr] 117 | (Node { key: key_left, value: value_left, left: lefts_left, right: lefts_right, color: lefts_color }, [INFO] [stderr] | ^^^^^^^^^^^ help: consider prefixing with an underscore: `_lefts_right` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `rights_left` [INFO] [stderr] --> src/rbt.rs:118:78 [INFO] [stderr] | [INFO] [stderr] 118 | Node { key: key_right, value: value_right, left: rights_left, right: rights_right, color: rights_color }) => { [INFO] [stderr] | ^^^^^^^^^^^ help: consider prefixing with an underscore: `_rights_left` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `rights_right` [INFO] [stderr] --> src/rbt.rs:118:98 [INFO] [stderr] | [INFO] [stderr] 118 | Node { key: key_right, value: value_right, left: rights_left, right: rights_right, color: rights_color }) => { [INFO] [stderr] | ^^^^^^^^^^^^ help: consider prefixing with an underscore: `_rights_right` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `value_left` [INFO] [stderr] --> src/rbt.rs:117:55 [INFO] [stderr] | [INFO] [stderr] 117 | (Node { key: key_left, value: value_left, left: lefts_left, right: lefts_right, color: lefts_color }, [INFO] [stderr] | ^^^^^^^^^^ help: consider prefixing with an underscore: `_value_left` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `value_right` [INFO] [stderr] --> src/rbt.rs:118:59 [INFO] [stderr] | [INFO] [stderr] 118 | Node { key: key_right, value: value_right, left: rights_left, right: rights_right, color: rights_color }) => { [INFO] [stderr] | ^^^^^^^^^^^ help: consider prefixing with an underscore: `_value_right` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `key_left` [INFO] [stderr] --> src/rbt.rs:134:38 [INFO] [stderr] | [INFO] [stderr] 134 | (Node { key: key_left, value: value_left, left: lefts_left, right: lefts_right, color: lefts_color }, Empty) => { [INFO] [stderr] | ^^^^^^^^ help: consider prefixing with an underscore: `_key_left` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `lefts_right` [INFO] [stderr] --> src/rbt.rs:134:92 [INFO] [stderr] | [INFO] [stderr] 134 | (Node { key: key_left, value: value_left, left: lefts_left, right: lefts_right, color: lefts_color }, Empty) => { [INFO] [stderr] | ^^^^^^^^^^^ help: consider prefixing with an underscore: `_lefts_right` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `value_left` [INFO] [stderr] --> src/rbt.rs:134:55 [INFO] [stderr] | [INFO] [stderr] 134 | (Node { key: key_left, value: value_left, left: lefts_left, right: lefts_right, color: lefts_color }, Empty) => { [INFO] [stderr] | ^^^^^^^^^^ help: consider prefixing with an underscore: `_value_left` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `key_right` [INFO] [stderr] --> src/rbt.rs:146:45 [INFO] [stderr] | [INFO] [stderr] 146 | (Empty, Node { key: key_right, value: value_right, left: rights_left, right: rights_right, color: rights_color }) => { [INFO] [stderr] | ^^^^^^^^^ help: consider prefixing with an underscore: `_key_right` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `rights_left` [INFO] [stderr] --> src/rbt.rs:146:82 [INFO] [stderr] | [INFO] [stderr] 146 | (Empty, Node { key: key_right, value: value_right, left: rights_left, right: rights_right, color: rights_color }) => { [INFO] [stderr] | ^^^^^^^^^^^ help: consider prefixing with an underscore: `_rights_left` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `rights_right` [INFO] [stderr] --> src/rbt.rs:146:102 [INFO] [stderr] | [INFO] [stderr] 146 | (Empty, Node { key: key_right, value: value_right, left: rights_left, right: rights_right, color: rights_color }) => { [INFO] [stderr] | ^^^^^^^^^^^^ help: consider prefixing with an underscore: `_rights_right` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `value_right` [INFO] [stderr] --> src/rbt.rs:146:63 [INFO] [stderr] | [INFO] [stderr] 146 | (Empty, Node { key: key_right, value: value_right, left: rights_left, right: rights_right, color: rights_color }) => { [INFO] [stderr] | ^^^^^^^^^^^ help: consider prefixing with an underscore: `_value_right` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `value` [INFO] [stderr] --> src/rbt.rs:165:29 [INFO] [stderr] | [INFO] [stderr] 165 | Node { key, value, left, right, .. } => { [INFO] [stderr] | ^^^^^ help: try ignoring the field: `value: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `right` [INFO] [stderr] --> src/rbt.rs:215:42 [INFO] [stderr] | [INFO] [stderr] 215 | Node { key, value, left, right, color } => { [INFO] [stderr] | ^^^^^ help: try ignoring the field: `right: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `left` [INFO] [stderr] --> src/rbt.rs:224:36 [INFO] [stderr] | [INFO] [stderr] 224 | Node { key, value, left, right, color } => { [INFO] [stderr] | ^^^^ help: try ignoring the field: `left: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `color` [INFO] [stderr] --> src/rbt.rs:342:45 [INFO] [stderr] | [INFO] [stderr] 342 | Node { key, value, left, right, color } => { [INFO] [stderr] | ^^^^^ help: try ignoring the field: `color: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `key` [INFO] [stderr] --> src/rbt.rs:342:20 [INFO] [stderr] | [INFO] [stderr] 342 | Node { key, value, left, right, color } => { [INFO] [stderr] | ^^^ help: try ignoring the field: `key: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `value` [INFO] [stderr] --> src/rbt.rs:342:25 [INFO] [stderr] | [INFO] [stderr] 342 | Node { key, value, left, right, color } => { [INFO] [stderr] | ^^^^^ help: try ignoring the field: `value: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `color` [INFO] [stderr] --> src/rbt.rs:396:48 [INFO] [stderr] | [INFO] [stderr] 396 | if let Node { key, value, left, right, color } = tree0 { [INFO] [stderr] | ^^^^^ help: try ignoring the field: `color: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `right` [INFO] [stderr] --> src/rbt.rs:396:41 [INFO] [stderr] | [INFO] [stderr] 396 | if let Node { key, value, left, right, color } = tree0 { [INFO] [stderr] | ^^^^^ help: try ignoring the field: `right: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `value` [INFO] [stderr] --> src/rbt.rs:396:28 [INFO] [stderr] | [INFO] [stderr] 396 | if let Node { key, value, left, right, color } = tree0 { [INFO] [stderr] | ^^^^^ help: try ignoring the field: `value: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `color2` [INFO] [stderr] --> src/rbt.rs:401:39 [INFO] [stderr] | [INFO] [stderr] 401 | right: right2, color: color2 [INFO] [stderr] | ^^^^^^ help: consider prefixing with an underscore: `_color2` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `left2` [INFO] [stderr] --> src/rbt.rs:400:23 [INFO] [stderr] | [INFO] [stderr] 400 | left: left2, [INFO] [stderr] | ^^^^^ help: consider prefixing with an underscore: `_left2` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `value2` [INFO] [stderr] --> src/rbt.rs:399:35 [INFO] [stderr] | [INFO] [stderr] 399 | key: key2, value: value2, [INFO] [stderr] | ^^^^^^ help: consider prefixing with an underscore: `_value2` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `color` [INFO] [stderr] --> src/rbt.rs:421:48 [INFO] [stderr] | [INFO] [stderr] 421 | if let Node { key, value, left, right, color } = tree3 { [INFO] [stderr] | ^^^^^ help: try ignoring the field: `color: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `left` [INFO] [stderr] --> src/rbt.rs:421:35 [INFO] [stderr] | [INFO] [stderr] 421 | if let Node { key, value, left, right, color } = tree3 { [INFO] [stderr] | ^^^^ help: try ignoring the field: `left: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `value` [INFO] [stderr] --> src/rbt.rs:421:28 [INFO] [stderr] | [INFO] [stderr] 421 | if let Node { key, value, left, right, color } = tree3 { [INFO] [stderr] | ^^^^^ help: try ignoring the field: `value: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `color2` [INFO] [stderr] --> src/rbt.rs:426:39 [INFO] [stderr] | [INFO] [stderr] 426 | right: right2, color: color2 [INFO] [stderr] | ^^^^^^ help: consider prefixing with an underscore: `_color2` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `right2` [INFO] [stderr] --> src/rbt.rs:426:24 [INFO] [stderr] | [INFO] [stderr] 426 | right: right2, color: color2 [INFO] [stderr] | ^^^^^^ help: consider prefixing with an underscore: `_right2` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `value2` [INFO] [stderr] --> src/rbt.rs:424:35 [INFO] [stderr] | [INFO] [stderr] 424 | key: key2, value: value2, [INFO] [stderr] | ^^^^^^ help: consider prefixing with an underscore: `_value2` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `key` [INFO] [stderr] --> src/rbt.rs:472:23 [INFO] [stderr] | [INFO] [stderr] 472 | if let Node { key, value, left, right, color } = tree.flip_colors() { [INFO] [stderr] | ^^^ help: try ignoring the field: `key: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `value` [INFO] [stderr] --> src/rbt.rs:472:28 [INFO] [stderr] | [INFO] [stderr] 472 | if let Node { key, value, left, right, color } = tree.flip_colors() { [INFO] [stderr] | ^^^^^ help: try ignoring the field: `value: _` [INFO] [stderr] [INFO] [stderr] warning: private type `streamlog::SparseIndexEntry` in public interface (error E0446) [INFO] [stderr] --> src/streamlog.rs:56:19 [INFO] [stderr] | [INFO] [stderr] 56 | SparseIndex { tree: RBT, segment: S, limit: u8, index_size_ratio: f32 }, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(private_in_public)]` on by default [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] = note: for more information, see issue #34537 [INFO] [stderr] [INFO] [stderr] warning: enum is never used: `SSTableObject` [INFO] [stderr] --> src/streamlog.rs:52:1 [INFO] [stderr] | [INFO] [stderr] 52 | / pub enum SSTableObject { [INFO] [stderr] 55 | | Memtable { tree: RBT, current_size: usize }, [INFO] [stderr] 56 | | SparseIndex { tree: RBT, segment: S, limit: u8, index_size_ratio: f32 }, [INFO] [stderr] 57 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new` [INFO] [stderr] --> src/streamlog.rs:62:5 [INFO] [stderr] | [INFO] [stderr] 62 | pub fn new(&self) -> SSTableObject { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `convert_to_sparse_index` [INFO] [stderr] --> src/streamlog.rs:67:5 [INFO] [stderr] | [INFO] [stderr] 67 | pub fn convert_to_sparse_index(&self, mut segment: S, limit: u8, index_size_ratio: f32) -> SSTableObject { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `write` [INFO] [stderr] --> src/streamlog.rs:81:5 [INFO] [stderr] | [INFO] [stderr] 81 | pub fn write(self, key: K, value: V) -> SSTableObject { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `read` [INFO] [stderr] --> src/streamlog.rs:95:5 [INFO] [stderr] | [INFO] [stderr] 95 | pub fn read(&mut self, key: K) -> Option { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `search` [INFO] [stderr] --> src/streamlog.rs:111:5 [INFO] [stderr] | [INFO] [stderr] 111 | fn search(&mut self, s: u32, e: u32, k: K, meta_vector: &Vec) -> Option { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `walk_and_populate` [INFO] [stderr] --> src/streamlog.rs:141:5 [INFO] [stderr] | [INFO] [stderr] 141 | fn walk_and_populate(&self, node: &NodeType, tree: RBT, segment: &mut S, index_size: u32, current_index_size: u32) -> RBT { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `add_or_append` [INFO] [stderr] --> src/streamlog.rs:162:5 [INFO] [stderr] | [INFO] [stderr] 162 | fn add_or_append(segment: &mut S, tree: RBT, key: K, value: V, append: bool) -> RBT { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `IndexError` [INFO] [stderr] --> src/streamlog.rs:210:5 [INFO] [stderr] | [INFO] [stderr] 210 | pub struct IndexError { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never used: `name` [INFO] [stderr] --> src/streamlog.rs:297:9 [INFO] [stderr] | [INFO] [stderr] 297 | name: String, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `node_exists` [INFO] [stderr] --> src/rbt.rs:162:9 [INFO] [stderr] | [INFO] [stderr] 162 | pub fn node_exists(&self, my_key: &K) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `find_max` [INFO] [stderr] --> src/rbt.rs:177:9 [INFO] [stderr] | [INFO] [stderr] 177 | fn find_max(&self) -> NodeType { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `find_lower_bound_h` [INFO] [stderr] --> src/rbt.rs:190:9 [INFO] [stderr] | [INFO] [stderr] 190 | fn find_lower_bound_h(&self, my_key: K, acc: NodeType) -> NodeType { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `find_lower_bound_value` [INFO] [stderr] --> src/rbt.rs:208:9 [INFO] [stderr] | [INFO] [stderr] 208 | pub fn find_lower_bound_value(&self, my_key: K) -> NodeType { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `find` [INFO] [stderr] --> src/rbt.rs:234:9 [INFO] [stderr] | [INFO] [stderr] 234 | pub fn find(&self, my_key: &K) -> NodeType { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new` [INFO] [stderr] --> src/rbt.rs:291:9 [INFO] [stderr] | [INFO] [stderr] 291 | pub fn new() -> RBT { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new_from` [INFO] [stderr] --> src/rbt.rs:295:9 [INFO] [stderr] | [INFO] [stderr] 295 | pub fn new_from(tree: &RBT) -> RBT { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `add` [INFO] [stderr] --> src/rbt.rs:304:9 [INFO] [stderr] | [INFO] [stderr] 304 | pub fn add(&self, key: K, value: V) -> RBT { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `get_smaller_value` [INFO] [stderr] --> src/rbt.rs:308:9 [INFO] [stderr] | [INFO] [stderr] 308 | pub fn get_smaller_value(&self, my_key: K) -> Option { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `find` [INFO] [stderr] --> src/rbt.rs:318:9 [INFO] [stderr] | [INFO] [stderr] 318 | pub fn find(&self, my_key: K) -> Option { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `balanced_tuple` [INFO] [stderr] --> src/rbt.rs:339:5 [INFO] [stderr] | [INFO] [stderr] 339 | fn balanced_tuple(root: &NodeType) -> (bool, i8) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `balanced` [INFO] [stderr] --> src/rbt.rs:350:5 [INFO] [stderr] | [INFO] [stderr] 350 | fn balanced(root: &NodeType) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/streamlog.rs:123:21 [INFO] [stderr] | [INFO] [stderr] 123 | segment.read_to_buffer(info.offset as u64, key_buf); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_must_use)]` on by default [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/streamlog.rs:132:25 [INFO] [stderr] | [INFO] [stderr] 132 | segment.read_to_buffer(info.offset + info.key_size as u64, value_buf); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/streamlog.rs:291:13 [INFO] [stderr] | [INFO] [stderr] 291 | fs::remove_file(file_name); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/streamlog.rs:354:9 [INFO] [stderr] | [INFO] [stderr] 354 | f.write_to_segment(0, &s); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/streamlog.rs:358:9 [INFO] [stderr] | [INFO] [stderr] 358 | reader.read_line(&mut line); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/streamlog.rs:370:9 [INFO] [stderr] | [INFO] [stderr] 370 | writer.flush(); // have not gotten out of scope yet, so gotta flush [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 24.72s [INFO] running `"docker" "inspect" "79240a5a7bef1fb573c9c481f5391f9cd320a15459c943b1ead87d38b901f54b"` [INFO] running `"docker" "rm" "-f" "79240a5a7bef1fb573c9c481f5391f9cd320a15459c943b1ead87d38b901f54b"` [INFO] [stdout] 79240a5a7bef1fb573c9c481f5391f9cd320a15459c943b1ead87d38b901f54b