Dec 19 12:47:41.846 INFO checking megesdal/bedtree-rs against master#d99a320cba42f661aebfa1293b7b2ec3603dda75 for pr-56955 Dec 19 12:47:41.846 INFO running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/pr-56955/worker-1/master#d99a320cba42f661aebfa1293b7b2ec3603dda75:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/pr-56955/sources/master#d99a320cba42f661aebfa1293b7b2ec3603dda75/gh/megesdal/bedtree-rs:/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" "+d99a320cba42f661aebfa1293b7b2ec3603dda75-alt" "check" "--frozen" "--all" "--all-targets"` Dec 19 12:47:42.020 INFO [stdout] d35b9e30be5eea1bb998960fec6918ddfc3f9ffc78e27df4f0217d49fe260caa Dec 19 12:47:42.026 INFO running `"docker" "start" "-a" "d35b9e30be5eea1bb998960fec6918ddfc3f9ffc78e27df4f0217d49fe260caa"` Dec 19 12:47:42.579 INFO [stderr] Checking hello_world v0.0.1 (/opt/crater/workdir) Dec 19 12:47:42.710 INFO [stderr] warning: unused import: `max` Dec 19 12:47:42.710 INFO [stderr] --> src/main.rs:2:16 Dec 19 12:47:42.710 INFO [stderr] | Dec 19 12:47:42.710 INFO [stderr] 2 | use std::cmp::{max, min, Ordering}; Dec 19 12:47:42.710 INFO [stderr] | ^^^ Dec 19 12:47:42.710 INFO [stderr] | Dec 19 12:47:42.710 INFO [stderr] = note: #[warn(unused_imports)] on by default Dec 19 12:47:42.711 INFO [stderr] Dec 19 12:47:42.743 INFO [stderr] warning: unused import: `max` Dec 19 12:47:42.743 INFO [stderr] --> src/main.rs:2:16 Dec 19 12:47:42.743 INFO [stderr] | Dec 19 12:47:42.743 INFO [stderr] 2 | use std::cmp::{max, min, Ordering}; Dec 19 12:47:42.743 INFO [stderr] | ^^^ Dec 19 12:47:42.743 INFO [stderr] | Dec 19 12:47:42.743 INFO [stderr] = note: #[warn(unused_imports)] on by default Dec 19 12:47:42.743 INFO [stderr] Dec 19 12:47:42.762 INFO [stderr] warning: unused variable: `node_to_insert` Dec 19 12:47:42.763 INFO [stderr] --> src/main.rs:114:14 Dec 19 12:47:42.763 INFO [stderr] | Dec 19 12:47:42.763 INFO [stderr] 114 | let (node_to_insert, insert_idx) = match split_result { Dec 19 12:47:42.763 INFO [stderr] | ^^^^^^^^^^^^^^ help: consider using `_node_to_insert` instead Dec 19 12:47:42.763 INFO [stderr] | Dec 19 12:47:42.763 INFO [stderr] = note: #[warn(unused_variables)] on by default Dec 19 12:47:42.763 INFO [stderr] Dec 19 12:47:42.763 INFO [stderr] warning: unused variable: `insert_idx` Dec 19 12:47:42.763 INFO [stderr] --> src/main.rs:114:30 Dec 19 12:47:42.763 INFO [stderr] | Dec 19 12:47:42.763 INFO [stderr] 114 | let (node_to_insert, insert_idx) = match split_result { Dec 19 12:47:42.763 INFO [stderr] | ^^^^^^^^^^ help: consider using `_insert_idx` instead Dec 19 12:47:42.763 INFO [stderr] Dec 19 12:47:42.763 INFO [stderr] warning: unused variable: `q` Dec 19 12:47:42.763 INFO [stderr] --> src/main.rs:125:68 Dec 19 12:47:42.763 INFO [stderr] | Dec 19 12:47:42.763 INFO [stderr] 125 | fn split_if_necessary(&'a self, parent: &'a BPlusTreeNode<'a>, q: &str) Dec 19 12:47:42.763 INFO [stderr] | ^ help: consider using `_q` instead Dec 19 12:47:42.763 INFO [stderr] Dec 19 12:47:42.775 INFO [stderr] warning: struct is never constructed: `BPlusTree` Dec 19 12:47:42.775 INFO [stderr] --> src/main.rs:42:1 Dec 19 12:47:42.775 INFO [stderr] | Dec 19 12:47:42.775 INFO [stderr] 42 | struct BPlusTree<'a> { Dec 19 12:47:42.775 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^ Dec 19 12:47:42.775 INFO [stderr] | Dec 19 12:47:42.775 INFO [stderr] = note: #[warn(dead_code)] on by default Dec 19 12:47:42.775 INFO [stderr] Dec 19 12:47:42.775 INFO [stderr] warning: struct is never constructed: `BPlusTreeNode` Dec 19 12:47:42.775 INFO [stderr] --> src/main.rs:48:1 Dec 19 12:47:42.775 INFO [stderr] | Dec 19 12:47:42.775 INFO [stderr] 48 | struct BPlusTreeNode<'a> { Dec 19 12:47:42.775 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ Dec 19 12:47:42.775 INFO [stderr] Dec 19 12:47:42.775 INFO [stderr] warning: method is never used: `is_leaf_node` Dec 19 12:47:42.775 INFO [stderr] --> src/main.rs:57:5 Dec 19 12:47:42.775 INFO [stderr] | Dec 19 12:47:42.775 INFO [stderr] 57 | fn is_leaf_node(&self) -> bool { Dec 19 12:47:42.776 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Dec 19 12:47:42.776 INFO [stderr] Dec 19 12:47:42.776 INFO [stderr] warning: method is never used: `insert` Dec 19 12:47:42.776 INFO [stderr] --> src/main.rs:64:5 Dec 19 12:47:42.776 INFO [stderr] | Dec 19 12:47:42.776 INFO [stderr] 64 | fn insert(&'a self, q: &str) -> &'a BPlusTreeNode<'a> { Dec 19 12:47:42.776 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Dec 19 12:47:42.776 INFO [stderr] Dec 19 12:47:42.776 INFO [stderr] warning: method is never used: `find_node` Dec 19 12:47:42.776 INFO [stderr] --> src/main.rs:70:5 Dec 19 12:47:42.776 INFO [stderr] | Dec 19 12:47:42.776 INFO [stderr] 70 | fn find_node(&'a self, q: &str, node: &'a BPlusTreeNode<'a>) -> &'a BPlusTreeNode<'a> { Dec 19 12:47:42.776 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Dec 19 12:47:42.776 INFO [stderr] Dec 19 12:47:42.776 INFO [stderr] warning: function is never used: `check_split` Dec 19 12:47:42.776 INFO [stderr] --> src/main.rs:75:13 Dec 19 12:47:42.776 INFO [stderr] | Dec 19 12:47:42.776 INFO [stderr] 75 | / fn check_split<'a>(tree: &'a BPlusTree<'a>, q: &str, node: &'a BPlusTreeNode<'a>, Dec 19 12:47:42.776 INFO [stderr] 76 | | child_idx: usize) -> &'a BPlusTreeNode<'a> { Dec 19 12:47:42.776 INFO [stderr] 77 | | if child_idx == node.splits.len() { Dec 19 12:47:42.776 INFO [stderr] 78 | | tree.find_node(q, &node.children[node.splits.len()]) Dec 19 12:47:42.776 INFO [stderr] ... | Dec 19 12:47:42.776 INFO [stderr] 83 | | } Dec 19 12:47:42.776 INFO [stderr] 84 | | }; Dec 19 12:47:42.776 INFO [stderr] | |_____________^ Dec 19 12:47:42.776 INFO [stderr] Dec 19 12:47:42.776 INFO [stderr] warning: method is never used: `rec_insert` Dec 19 12:47:42.776 INFO [stderr] --> src/main.rs:89:5 Dec 19 12:47:42.776 INFO [stderr] | Dec 19 12:47:42.776 INFO [stderr] 89 | / fn rec_insert(&'a self, q: &str, parent: &'a BPlusTreeNode<'a>, Dec 19 12:47:42.776 INFO [stderr] 90 | | child: Option<&'a BPlusTreeNode>) -> &'a BPlusTreeNode<'a> { Dec 19 12:47:42.776 INFO [stderr] 91 | | Dec 19 12:47:42.776 INFO [stderr] 92 | | // TODO: recursive closure via struct? Dec 19 12:47:42.776 INFO [stderr] ... | Dec 19 12:47:42.776 INFO [stderr] 122 | | parent Dec 19 12:47:42.776 INFO [stderr] 123 | | } Dec 19 12:47:42.776 INFO [stderr] | |_____^ Dec 19 12:47:42.776 INFO [stderr] Dec 19 12:47:42.776 INFO [stderr] warning: function is never used: `find_insert_loc` Dec 19 12:47:42.776 INFO [stderr] --> src/main.rs:93:9 Dec 19 12:47:42.776 INFO [stderr] | Dec 19 12:47:42.776 INFO [stderr] 93 | / fn find_insert_loc<'a>(compare: fn(&str,&str)->Ordering, splits: &Vec<&str>, idx: usize, Dec 19 12:47:42.776 INFO [stderr] 94 | | q: &str, child: Option<&'a BPlusTreeNode>) -> (usize, bool) { Dec 19 12:47:42.776 INFO [stderr] 95 | | if idx == splits.len() { Dec 19 12:47:42.776 INFO [stderr] 96 | | (splits.len(), true) Dec 19 12:47:42.776 INFO [stderr] ... | Dec 19 12:47:42.776 INFO [stderr] 103 | | } Dec 19 12:47:42.776 INFO [stderr] 104 | | } Dec 19 12:47:42.776 INFO [stderr] | |_________^ Dec 19 12:47:42.776 INFO [stderr] Dec 19 12:47:42.778 INFO [stderr] warning: method is never used: `split_if_necessary` Dec 19 12:47:42.780 INFO [stderr] --> src/main.rs:125:5 Dec 19 12:47:42.780 INFO [stderr] | Dec 19 12:47:42.780 INFO [stderr] 125 | / fn split_if_necessary(&'a self, parent: &'a BPlusTreeNode<'a>, q: &str) Dec 19 12:47:42.780 INFO [stderr] 126 | | -> (Option<&'a BPlusTreeNode<'a>>, bool) { Dec 19 12:47:42.780 INFO [stderr] 127 | | let should_split = parent.splits.len() == self.branch_factor - 1; Dec 19 12:47:42.780 INFO [stderr] 128 | | if !should_split { Dec 19 12:47:42.780 INFO [stderr] ... | Dec 19 12:47:42.780 INFO [stderr] 133 | | } Dec 19 12:47:42.780 INFO [stderr] 134 | | } Dec 19 12:47:42.780 INFO [stderr] | |_____^ Dec 19 12:47:42.780 INFO [stderr] Dec 19 12:47:42.781 INFO [stderr] warning: function is never used: `verify_edit_distance` Dec 19 12:47:42.781 INFO [stderr] --> src/main.rs:137:1 Dec 19 12:47:42.781 INFO [stderr] | Dec 19 12:47:42.781 INFO [stderr] 137 | fn verify_edit_distance(x: &str, y: &str, distance_threshold: usize) -> Option { Dec 19 12:47:42.781 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Dec 19 12:47:42.781 INFO [stderr] Dec 19 12:47:42.781 INFO [stderr] warning: function is never used: `create_verification_table` Dec 19 12:47:42.781 INFO [stderr] --> src/main.rs:171:1 Dec 19 12:47:42.781 INFO [stderr] | Dec 19 12:47:42.781 INFO [stderr] 171 | / fn create_verification_table( Dec 19 12:47:42.781 INFO [stderr] 172 | | nrows: usize, Dec 19 12:47:42.781 INFO [stderr] 173 | | ncols: usize, Dec 19 12:47:42.781 INFO [stderr] 174 | | distance_threshold: usize, Dec 19 12:47:42.781 INFO [stderr] ... | Dec 19 12:47:42.781 INFO [stderr] 225 | | (row0, Some(m)) Dec 19 12:47:42.781 INFO [stderr] 226 | | } Dec 19 12:47:42.781 INFO [stderr] | |_^ Dec 19 12:47:42.781 INFO [stderr] Dec 19 12:47:42.842 INFO [stderr] warning: unused variable: `node_to_insert` Dec 19 12:47:42.842 INFO [stderr] --> src/main.rs:114:14 Dec 19 12:47:42.842 INFO [stderr] | Dec 19 12:47:42.842 INFO [stderr] 114 | let (node_to_insert, insert_idx) = match split_result { Dec 19 12:47:42.842 INFO [stderr] | ^^^^^^^^^^^^^^ help: consider using `_node_to_insert` instead Dec 19 12:47:42.843 INFO [stderr] | Dec 19 12:47:42.843 INFO [stderr] = note: #[warn(unused_variables)] on by default Dec 19 12:47:42.843 INFO [stderr] Dec 19 12:47:42.843 INFO [stderr] warning: unused variable: `insert_idx` Dec 19 12:47:42.843 INFO [stderr] --> src/main.rs:114:30 Dec 19 12:47:42.843 INFO [stderr] | Dec 19 12:47:42.843 INFO [stderr] 114 | let (node_to_insert, insert_idx) = match split_result { Dec 19 12:47:42.843 INFO [stderr] | ^^^^^^^^^^ help: consider using `_insert_idx` instead Dec 19 12:47:42.843 INFO [stderr] Dec 19 12:47:42.843 INFO [stderr] warning: unused variable: `q` Dec 19 12:47:42.843 INFO [stderr] --> src/main.rs:125:68 Dec 19 12:47:42.843 INFO [stderr] | Dec 19 12:47:42.843 INFO [stderr] 125 | fn split_if_necessary(&'a self, parent: &'a BPlusTreeNode<'a>, q: &str) Dec 19 12:47:42.843 INFO [stderr] | ^ help: consider using `_q` instead Dec 19 12:47:42.843 INFO [stderr] Dec 19 12:47:42.847 INFO [stderr] warning: struct is never constructed: `BPlusTree` Dec 19 12:47:42.847 INFO [stderr] --> src/main.rs:42:1 Dec 19 12:47:42.847 INFO [stderr] | Dec 19 12:47:42.847 INFO [stderr] 42 | struct BPlusTree<'a> { Dec 19 12:47:42.847 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^ Dec 19 12:47:42.847 INFO [stderr] | Dec 19 12:47:42.847 INFO [stderr] = note: #[warn(dead_code)] on by default Dec 19 12:47:42.873 INFO [stderr] Dec 19 12:47:42.873 INFO [stderr] warning: struct is never constructed: `BPlusTreeNode` Dec 19 12:47:42.873 INFO [stderr] --> src/main.rs:48:1 Dec 19 12:47:42.873 INFO [stderr] | Dec 19 12:47:42.873 INFO [stderr] 48 | struct BPlusTreeNode<'a> { Dec 19 12:47:42.873 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ Dec 19 12:47:42.873 INFO [stderr] Dec 19 12:47:42.873 INFO [stderr] warning: method is never used: `is_leaf_node` Dec 19 12:47:42.873 INFO [stderr] --> src/main.rs:57:5 Dec 19 12:47:42.873 INFO [stderr] | Dec 19 12:47:42.873 INFO [stderr] 57 | fn is_leaf_node(&self) -> bool { Dec 19 12:47:42.873 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Dec 19 12:47:42.873 INFO [stderr] Dec 19 12:47:42.873 INFO [stderr] warning: method is never used: `insert` Dec 19 12:47:42.873 INFO [stderr] --> src/main.rs:64:5 Dec 19 12:47:42.873 INFO [stderr] | Dec 19 12:47:42.873 INFO [stderr] 64 | fn insert(&'a self, q: &str) -> &'a BPlusTreeNode<'a> { Dec 19 12:47:42.873 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Dec 19 12:47:42.873 INFO [stderr] Dec 19 12:47:42.873 INFO [stderr] warning: method is never used: `find_node` Dec 19 12:47:42.873 INFO [stderr] --> src/main.rs:70:5 Dec 19 12:47:42.873 INFO [stderr] | Dec 19 12:47:42.873 INFO [stderr] 70 | fn find_node(&'a self, q: &str, node: &'a BPlusTreeNode<'a>) -> &'a BPlusTreeNode<'a> { Dec 19 12:47:42.873 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Dec 19 12:47:42.874 INFO [stderr] Dec 19 12:47:42.874 INFO [stderr] warning: function is never used: `check_split` Dec 19 12:47:42.874 INFO [stderr] --> src/main.rs:75:13 Dec 19 12:47:42.874 INFO [stderr] | Dec 19 12:47:42.874 INFO [stderr] 75 | / fn check_split<'a>(tree: &'a BPlusTree<'a>, q: &str, node: &'a BPlusTreeNode<'a>, Dec 19 12:47:42.874 INFO [stderr] 76 | | child_idx: usize) -> &'a BPlusTreeNode<'a> { Dec 19 12:47:42.874 INFO [stderr] 77 | | if child_idx == node.splits.len() { Dec 19 12:47:42.874 INFO [stderr] 78 | | tree.find_node(q, &node.children[node.splits.len()]) Dec 19 12:47:42.874 INFO [stderr] ... | Dec 19 12:47:42.874 INFO [stderr] 83 | | } Dec 19 12:47:42.874 INFO [stderr] 84 | | }; Dec 19 12:47:42.874 INFO [stderr] | |_____________^ Dec 19 12:47:42.874 INFO [stderr] Dec 19 12:47:42.874 INFO [stderr] warning: method is never used: `rec_insert` Dec 19 12:47:42.874 INFO [stderr] --> src/main.rs:89:5 Dec 19 12:47:42.874 INFO [stderr] | Dec 19 12:47:42.874 INFO [stderr] 89 | / fn rec_insert(&'a self, q: &str, parent: &'a BPlusTreeNode<'a>, Dec 19 12:47:42.874 INFO [stderr] 90 | | child: Option<&'a BPlusTreeNode>) -> &'a BPlusTreeNode<'a> { Dec 19 12:47:42.874 INFO [stderr] 91 | | Dec 19 12:47:42.874 INFO [stderr] 92 | | // TODO: recursive closure via struct? Dec 19 12:47:42.874 INFO [stderr] ... | Dec 19 12:47:42.874 INFO [stderr] 122 | | parent Dec 19 12:47:42.874 INFO [stderr] 123 | | } Dec 19 12:47:42.874 INFO [stderr] | |_____^ Dec 19 12:47:42.874 INFO [stderr] Dec 19 12:47:42.874 INFO [stderr] warning: function is never used: `find_insert_loc` Dec 19 12:47:42.874 INFO [stderr] --> src/main.rs:93:9 Dec 19 12:47:42.874 INFO [stderr] | Dec 19 12:47:42.874 INFO [stderr] 93 | / fn find_insert_loc<'a>(compare: fn(&str,&str)->Ordering, splits: &Vec<&str>, idx: usize, Dec 19 12:47:42.874 INFO [stderr] 94 | | q: &str, child: Option<&'a BPlusTreeNode>) -> (usize, bool) { Dec 19 12:47:42.874 INFO [stderr] 95 | | if idx == splits.len() { Dec 19 12:47:42.874 INFO [stderr] 96 | | (splits.len(), true) Dec 19 12:47:42.874 INFO [stderr] ... | Dec 19 12:47:42.874 INFO [stderr] 103 | | } Dec 19 12:47:42.874 INFO [stderr] 104 | | } Dec 19 12:47:42.874 INFO [stderr] | |_________^ Dec 19 12:47:42.874 INFO [stderr] Dec 19 12:47:42.874 INFO [stderr] warning: method is never used: `split_if_necessary` Dec 19 12:47:42.874 INFO [stderr] --> src/main.rs:125:5 Dec 19 12:47:42.874 INFO [stderr] | Dec 19 12:47:42.874 INFO [stderr] 125 | / fn split_if_necessary(&'a self, parent: &'a BPlusTreeNode<'a>, q: &str) Dec 19 12:47:42.874 INFO [stderr] 126 | | -> (Option<&'a BPlusTreeNode<'a>>, bool) { Dec 19 12:47:42.874 INFO [stderr] 127 | | let should_split = parent.splits.len() == self.branch_factor - 1; Dec 19 12:47:42.874 INFO [stderr] 128 | | if !should_split { Dec 19 12:47:42.874 INFO [stderr] ... | Dec 19 12:47:42.874 INFO [stderr] 133 | | } Dec 19 12:47:42.874 INFO [stderr] 134 | | } Dec 19 12:47:42.874 INFO [stderr] | |_____^ Dec 19 12:47:42.874 INFO [stderr] Dec 19 12:47:42.874 INFO [stderr] Finished dev [unoptimized + debuginfo] target(s) in 0.30s Dec 19 12:47:43.233 INFO running `"docker" "inspect" "d35b9e30be5eea1bb998960fec6918ddfc3f9ffc78e27df4f0217d49fe260caa"` Dec 19 12:47:43.355 INFO running `"docker" "rm" "-f" "d35b9e30be5eea1bb998960fec6918ddfc3f9ffc78e27df4f0217d49fe260caa"` Dec 19 12:47:43.505 INFO [stdout] d35b9e30be5eea1bb998960fec6918ddfc3f9ffc78e27df4f0217d49fe260caa