[INFO] cloning repository https://github.com/taisho6339/database-internal
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/taisho6339/database-internal" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftaisho6339%2Fdatabase-internal", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftaisho6339%2Fdatabase-internal'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] cd4d9d2ede9ba37957e207c5280b5036298718b3
[INFO] checking taisho6339/database-internal against try#a4980311fb7bb9e7893708e6bd3fbbfb2819fd3d for pr-145342
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftaisho6339%2Fdatabase-internal" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/taisho6339/database-internal
[INFO] finished tweaking git repo https://github.com/taisho6339/database-internal
[INFO] tweaked toml for git repo https://github.com/taisho6339/database-internal written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/taisho6339/database-internal on toolchain a4980311fb7bb9e7893708e6bd3fbbfb2819fd3d
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+a4980311fb7bb9e7893708e6bd3fbbfb2819fd3d" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/taisho6339/database-internal 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" "+a4980311fb7bb9e7893708e6bd3fbbfb2819fd3d" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded binary-layout v3.1.1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+a4980311fb7bb9e7893708e6bd3fbbfb2819fd3d" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] e92582e3b76d59e41fd0afebbddefebada140de7fd02f15b4505884bc3acc9ee
[INFO] running `Command { std: "docker" "start" "-a" "e92582e3b76d59e41fd0afebbddefebada140de7fd02f15b4505884bc3acc9ee", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "e92582e3b76d59e41fd0afebbddefebada140de7fd02f15b4505884bc3acc9ee", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e92582e3b76d59e41fd0afebbddefebada140de7fd02f15b4505884bc3acc9ee", kill_on_drop: false }`
[INFO] [stdout] e92582e3b76d59e41fd0afebbddefebada140de7fd02f15b4505884bc3acc9ee
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+a4980311fb7bb9e7893708e6bd3fbbfb2819fd3d" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 8afc43c378ec9e28eb7e7a6a4626db721a82621028fb6c3958bd729106641f06
[INFO] running `Command { std: "docker" "start" "-a" "8afc43c378ec9e28eb7e7a6a4626db721a82621028fb6c3958bd729106641f06", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.43
[INFO] [stderr]    Compiling unicode-ident v1.0.3
[INFO] [stderr]    Compiling syn v1.0.99
[INFO] [stderr]    Compiling doc-comment v0.3.3
[INFO] [stderr]    Compiling crc32fast v1.3.2
[INFO] [stderr]    Compiling anyhow v1.0.65
[INFO] [stderr]    Compiling paste v1.0.7
[INFO] [stderr]     Checking byteorder v1.4.3
[INFO] [stderr]     Checking binary-layout v3.1.1
[INFO] [stderr]    Compiling quote v1.0.21
[INFO] [stderr]    Compiling thiserror-impl v1.0.34
[INFO] [stderr]     Checking thiserror v1.0.34
[INFO] [stderr]     Checking database-internal v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `anyhow::Context`
[INFO] [stdout]  --> src/btree.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use anyhow::Context;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::btree::node::Node`
[INFO] [stdout]  --> src/btree.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::btree::node::Node;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BorrowMut` and `Borrow`
[INFO] [stdout]  --> src/btree/slotted_page.rs:1:19
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::borrow::{Borrow, BorrowMut};
[INFO] [stdout]   |                   ^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::btree::slotted_page::cell::body`
[INFO] [stdout]  --> src/btree/slotted_page.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::btree::slotted_page::cell::body;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cell::RefCell`
[INFO] [stdout]  --> src/btree/node.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::cell::RefCell;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `thiserror::Error`
[INFO] [stdout]  --> src/btree/node.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use thiserror::Error;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SlottedPage`
[INFO] [stdout]  --> src/btree/node.rs:8:53
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::btree::slotted_page::{MAGIC_NUMBER_LEAF, SlottedPage};
[INFO] [stdout]   |                                                     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::disk_manager::PageId`
[INFO] [stdout]   --> src/btree/node.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::disk_manager::PageId;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::borrow::Borrow`
[INFO] [stdout]  --> src/access_manager.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::borrow::Borrow;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cell::RefCell`
[INFO] [stdout]  --> src/access_manager.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::cell::RefCell;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `anyhow`
[INFO] [stdout]  --> src/access_manager.rs:7:14
[INFO] [stdout]   |
[INFO] [stdout] 7 | use anyhow::{anyhow, Context, Result};
[INFO] [stdout]   |              ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `thiserror::Error`
[INFO] [stdout]  --> src/access_manager.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use thiserror::Error;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BufferError`
[INFO] [stdout]   --> src/access_manager.rs:11:29
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::buffer_manager::{BufferError, BufferId, PageBuffer};
[INFO] [stdout]    |                             ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::borrow::Borrow`
[INFO] [stdout]  --> src/disk_manager.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::borrow::Borrow;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io`
[INFO] [stdout]  --> src/disk_manager.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::io;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `anyhow`
[INFO] [stdout]  --> src/disk_manager.rs:7:14
[INFO] [stdout]   |
[INFO] [stdout] 7 | use anyhow::{anyhow, Context, Result};
[INFO] [stdout]   |              ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `anyhow::Context`
[INFO] [stdout]  --> src/btree.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use anyhow::Context;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::btree::node::Node`
[INFO] [stdout]  --> src/btree.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::btree::node::Node;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BorrowMut` and `Borrow`
[INFO] [stdout]  --> src/btree/slotted_page.rs:1:19
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::borrow::{Borrow, BorrowMut};
[INFO] [stdout]   |                   ^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::btree::slotted_page::cell::body`
[INFO] [stdout]  --> src/btree/slotted_page.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::btree::slotted_page::cell::body;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `thiserror::Error`
[INFO] [stdout]  --> src/btree/node.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use thiserror::Error;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::disk_manager::PageId`
[INFO] [stdout]   --> src/btree/node.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::disk_manager::PageId;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::borrow::BorrowMut`
[INFO] [stdout]   --> src/btree/node.rs:82:9
[INFO] [stdout]    |
[INFO] [stdout] 82 |     use std::borrow::BorrowMut;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Write`
[INFO] [stdout]   --> src/btree/node.rs:83:9
[INFO] [stdout]    |
[INFO] [stdout] 83 |     use std::io::Write;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `cell` and `pointer`
[INFO] [stdout]   --> src/btree/node.rs:85:38
[INFO] [stdout]    |
[INFO] [stdout] 85 |     use crate::btree::slotted_page::{cell, MAGIC_NUMBER_LEAF, pointer};
[INFO] [stdout]    |                                      ^^^^                     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::borrow::Borrow`
[INFO] [stdout]  --> src/access_manager.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::borrow::Borrow;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cell::RefCell`
[INFO] [stdout]  --> src/access_manager.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::cell::RefCell;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `anyhow`
[INFO] [stdout]  --> src/access_manager.rs:7:14
[INFO] [stdout]   |
[INFO] [stdout] 7 | use anyhow::{anyhow, Context, Result};
[INFO] [stdout]   |              ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `thiserror::Error`
[INFO] [stdout]  --> src/access_manager.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use thiserror::Error;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BufferError`
[INFO] [stdout]   --> src/access_manager.rs:11:29
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::buffer_manager::{BufferError, BufferId, PageBuffer};
[INFO] [stdout]    |                             ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::borrow::Borrow`
[INFO] [stdout]  --> src/disk_manager.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::borrow::Borrow;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io`
[INFO] [stdout]  --> src/disk_manager.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::io;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `anyhow`
[INFO] [stdout]  --> src/disk_manager.rs:7:14
[INFO] [stdout]   |
[INFO] [stdout] 7 | use anyhow::{anyhow, Context, Result};
[INFO] [stdout]   |              ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ptr::write`
[INFO] [stdout]   --> src/disk_manager.rs:71:9
[INFO] [stdout]    |
[INFO] [stdout] 71 |     use std::ptr::write;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/access_manager.rs:25:13
[INFO] [stdout]    |
[INFO] [stdout] 25 |         let mut disk_manager = DiskManager::new(path).context("failed to new disk manager")?;
[INFO] [stdout]    |             ----^^^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/access_manager.rs:26:13
[INFO] [stdout]    |
[INFO] [stdout] 26 |         let mut buffer_manager = BufferManager::new(10);
[INFO] [stdout]    |             ----^^^^^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a`
[INFO] [stdout]   --> src/main.rs:20:9
[INFO] [stdout]    |
[INFO] [stdout] 20 |     let a = [1, 2, 3];
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_a`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `print` is never used
[INFO] [stdout]  --> src/main.rs:8:4
[INFO] [stdout]   |
[INFO] [stdout] 8 | fn print(a: [i32; 3]) {
[INFO] [stdout]   |    ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Error` is never used
[INFO] [stdout]   --> src/btree.rs:14:10
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub enum Error {}
[INFO] [stdout]    |          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Btree` is never constructed
[INFO] [stdout]   --> src/btree.rs:16:8
[INFO] [stdout]    |
[INFO] [stdout] 16 | struct Btree {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ROOT_PAGE_ID` is never used
[INFO] [stdout]   --> src/btree.rs:20:7
[INFO] [stdout]    |
[INFO] [stdout] 20 | const ROOT_PAGE_ID: PageId = PageId(0);
[INFO] [stdout]    |       ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/btree.rs:23:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl Btree {
[INFO] [stdout]    | ---------- associated function in this implementation
[INFO] [stdout] 23 |     pub fn new(access_manager: Rc<AccessManager>) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PAGE_VERSION_V1` is never used
[INFO] [stdout]   --> src/btree/slotted_page.rs:32:11
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub const PAGE_VERSION_V1: u8 = 1;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `POINTER_SIZE` is never used
[INFO] [stdout]   --> src/btree/slotted_page.rs:33:11
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub const POINTER_SIZE: usize = 32;
[INFO] [stdout]    |           ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MAGIC_NUMBER_LEAF` is never used
[INFO] [stdout]   --> src/btree/slotted_page.rs:35:11
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub const MAGIC_NUMBER_LEAF: u32 = 0x32DD56AA;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MAGIC_NUMBER_INTERNAL` is never used
[INFO] [stdout]   --> src/btree/slotted_page.rs:36:11
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub const MAGIC_NUMBER_INTERNAL: u32 = 0x32DD77AB;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SlottedPage` is never constructed
[INFO] [stdout]   --> src/btree/slotted_page.rs:64:12
[INFO] [stdout]    |
[INFO] [stdout] 64 | pub struct SlottedPage {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Error` is never used
[INFO] [stdout]   --> src/btree/slotted_page.rs:69:10
[INFO] [stdout]    |
[INFO] [stdout] 69 | pub enum Error {
[INFO] [stdout]    |          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/btree/slotted_page.rs:77:12
[INFO] [stdout]     |
[INFO] [stdout]  76 | impl SlottedPage {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout]  77 |     pub fn new(magic_number: u32) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  92 |     pub fn wrap(data: [u8; PAGE_SIZE]) -> Self {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout]  98 |     pub fn valid(&mut self) -> bool {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 107 |     pub fn empty(&self) -> bool {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 111 |     pub fn to_bytes(&self) -> &[u8; PAGE_SIZE] {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 117 |     pub fn check_sum(&mut self) -> u32 {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 129 |     pub fn header_view(&self) -> page_header::View<impl AsRef<[u8]> + '_> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 134 |     pub fn header_view_mut(&mut self) -> page_header::View<impl AsRef<[u8]> + AsMut<[u8]> + '_> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 139 |     pub fn body_view(&self) -> &[u8] {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 143 |     pub fn body_view_mut(&mut self) -> &mut [u8] {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 147 |     pub fn pointer_view(&self, index: usize) -> pointer::View<impl AsRef<[u8]> + '_> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 155 |     pub fn pointer_view_mut(&mut self, index: usize) -> pointer::View<impl AsRef<[u8]> + AsMut<[u8]> + '_> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 163 |     pub fn cell_view(&self, index: usize) -> cell::View<impl AsRef<[u8]> + '_> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 171 |     pub fn cell_view_mut(&mut self, index: usize) -> cell::View<impl AsRef<[u8]> + AsMut<[u8]> + '_> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 179 |     fn cell_free_space(&self) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 188 |     pub fn add_cell(&mut self, index: usize, key: &[u8], value: &[u8]) -> Result<(), Error> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Node` is never constructed
[INFO] [stdout]   --> src/btree/node.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct Node {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `is_leaf`, and `find` are never used
[INFO] [stdout]   --> src/btree/node.rs:26:12
[INFO] [stdout]    |
[INFO] [stdout] 25 | impl Node {
[INFO] [stdout]    | --------- associated items in this implementation
[INFO] [stdout] 26 |     pub fn new(page_buffer: Rc<PageBuffer>) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 38 |     pub fn is_leaf(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 43 |     pub fn find(&self, key: &[u8]) -> (u16, bool) {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AccessManager` is never constructed
[INFO] [stdout]   --> src/access_manager.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct AccessManager {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `initialize`, and `fetch_page` are never used
[INFO] [stdout]   --> src/access_manager.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 23 | impl AccessManager {
[INFO] [stdout]    | ------------------ associated items in this implementation
[INFO] [stdout] 24 |     pub fn new(path: impl AsRef<Path>) -> Result<Self> {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 35 |     pub fn initialize(&mut self) -> Result<()> {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 51 |     pub fn fetch_page(&mut self, page_id: PageId) -> Result<Rc<PageBuffer>> {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BufferId` is never constructed
[INFO] [stdout]  --> src/buffer_manager.rs:9:12
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub struct BufferId(pub u32);
[INFO] [stdout]   |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `to_usize`, `to_u32`, `to_u64`, and `increment_id` are never used
[INFO] [stdout]   --> src/buffer_manager.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl BufferId {
[INFO] [stdout]    | ------------- methods in this implementation
[INFO] [stdout] 12 |     pub fn to_usize(&self) -> usize { self.0 as usize }
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 13 |     pub fn to_u32(self) -> u32 {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 16 |     pub fn to_u64(self) -> u64 {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 19 |     pub fn increment_id(self) -> BufferId {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `BufferError` is never used
[INFO] [stdout]   --> src/buffer_manager.rs:25:10
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub enum BufferError {
[INFO] [stdout]    |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PageBuffer` is never constructed
[INFO] [stdout]   --> src/buffer_manager.rs:31:12
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub struct PageBuffer {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BufferItem` is never constructed
[INFO] [stdout]   --> src/buffer_manager.rs:46:12
[INFO] [stdout]    |
[INFO] [stdout] 46 | pub struct BufferItem {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BufferManager` is never constructed
[INFO] [stdout]   --> src/buffer_manager.rs:52:12
[INFO] [stdout]    |
[INFO] [stdout] 52 | pub struct BufferManager {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `add_page`, `fetch_page`, and `increment_next_buffer_id` are never used
[INFO] [stdout]    --> src/buffer_manager.rs:59:12
[INFO] [stdout]     |
[INFO] [stdout]  58 | impl BufferManager {
[INFO] [stdout]     | ------------------ associated items in this implementation
[INFO] [stdout]  59 |     pub fn new(size: usize) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  70 |     pub fn add_page(&mut self, item: SlottedPage) -> Result<BufferId, BufferError> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn fetch_page(&mut self, buffer_id: BufferId) -> Option<Rc<PageBuffer>> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 120 |     fn increment_next_buffer_id(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PageId` is never constructed
[INFO] [stdout]   --> src/disk_manager.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct PageId(pub u32);
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `to_u32` and `to_u64` are never used
[INFO] [stdout]   --> src/disk_manager.rs:15:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl PageId {
[INFO] [stdout]    | ----------- methods in this implementation
[INFO] [stdout] 15 |     pub fn to_u32(self) -> u32 {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 18 |     pub fn to_u64(self) -> u64 {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DiskManager` is never constructed
[INFO] [stdout]   --> src/disk_manager.rs:26:12
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub struct DiskManager {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `next_page_id`, `write_page`, and `fetch_page` are never used
[INFO] [stdout]   --> src/disk_manager.rs:32:12
[INFO] [stdout]    |
[INFO] [stdout] 31 | impl DiskManager {
[INFO] [stdout]    | ---------------- associated items in this implementation
[INFO] [stdout] 32 |     pub fn new(file_path: impl AsRef<Path>) -> Result<Self> {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 46 |     pub fn next_page_id(&self) -> &PageId {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 50 |     pub fn write_page(&mut self, page_id: PageId, page: &SlottedPage) -> Result<()> {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 58 |     pub fn fetch_page(&mut self, page_id: PageId) -> Result<SlottedPage> {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cell_size`
[INFO] [stdout]   --> src/btree/node.rs:92:13
[INFO] [stdout]    |
[INFO] [stdout] 92 |         let cell_size: usize = 8;
[INFO] [stdout]    |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cell_size`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/access_manager.rs:25:13
[INFO] [stdout]    |
[INFO] [stdout] 25 |         let mut disk_manager = DiskManager::new(path).context("failed to new disk manager")?;
[INFO] [stdout]    |             ----^^^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/access_manager.rs:26:13
[INFO] [stdout]    |
[INFO] [stdout] 26 |         let mut buffer_manager = BufferManager::new(10);
[INFO] [stdout]    |             ----^^^^^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cleanup`
[INFO] [stdout]   --> src/access_manager.rs:85:13
[INFO] [stdout]    |
[INFO] [stdout] 85 |         let cleanup = Cleanup;
[INFO] [stdout]    |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cleanup`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cleanup`
[INFO] [stdout]   --> src/disk_manager.rs:89:13
[INFO] [stdout]    |
[INFO] [stdout] 89 |         let cleanup = Cleanup;
[INFO] [stdout]    |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cleanup`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a`
[INFO] [stdout]   --> src/main.rs:20:9
[INFO] [stdout]    |
[INFO] [stdout] 20 |     let a = [1, 2, 3];
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `print` is never used
[INFO] [stdout]  --> src/main.rs:8:4
[INFO] [stdout]   |
[INFO] [stdout] 8 | fn print(a: [i32; 3]) {
[INFO] [stdout]   |    ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Error` is never used
[INFO] [stdout]   --> src/btree.rs:14:10
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub enum Error {}
[INFO] [stdout]    |          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Btree` is never constructed
[INFO] [stdout]   --> src/btree.rs:16:8
[INFO] [stdout]    |
[INFO] [stdout] 16 | struct Btree {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ROOT_PAGE_ID` is never used
[INFO] [stdout]   --> src/btree.rs:20:7
[INFO] [stdout]    |
[INFO] [stdout] 20 | const ROOT_PAGE_ID: PageId = PageId(0);
[INFO] [stdout]    |       ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/btree.rs:23:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl Btree {
[INFO] [stdout]    | ---------- associated function in this implementation
[INFO] [stdout] 23 |     pub fn new(access_manager: Rc<AccessManager>) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `POINTER_SIZE` is never used
[INFO] [stdout]   --> src/btree/slotted_page.rs:33:11
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub const POINTER_SIZE: usize = 32;
[INFO] [stdout]    |           ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_leaf` is never used
[INFO] [stdout]   --> src/btree/node.rs:38:12
[INFO] [stdout]    |
[INFO] [stdout] 25 | impl Node {
[INFO] [stdout]    | --------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 38 |     pub fn is_leaf(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `fetch_page` is never used
[INFO] [stdout]   --> src/access_manager.rs:51:12
[INFO] [stdout]    |
[INFO] [stdout] 23 | impl AccessManager {
[INFO] [stdout]    | ------------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 51 |     pub fn fetch_page(&mut self, page_id: PageId) -> Result<Rc<PageBuffer>> {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `to_u32`, `to_u64`, and `increment_id` are never used
[INFO] [stdout]   --> src/buffer_manager.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl BufferId {
[INFO] [stdout]    | ------------- methods in this implementation
[INFO] [stdout] 12 |     pub fn to_usize(&self) -> usize { self.0 as usize }
[INFO] [stdout] 13 |     pub fn to_u32(self) -> u32 {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 16 |     pub fn to_u64(self) -> u64 {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 19 |     pub fn increment_id(self) -> BufferId {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `is_dirty` is never read
[INFO] [stdout]   --> src/buffer_manager.rs:32:9
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub struct PageBuffer {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] 32 |     pub is_dirty: bool,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PageBuffer` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `to_u32` is never used
[INFO] [stdout]   --> src/disk_manager.rs:15:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl PageId {
[INFO] [stdout]    | ----------- method in this implementation
[INFO] [stdout] 15 |     pub fn to_u32(self) -> u32 {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `next_page_id` is never read
[INFO] [stdout]   --> src/disk_manager.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub struct DiskManager {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] 27 |     file: File,
[INFO] [stdout] 28 |     next_page_id: PageId,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `next_page_id` is never used
[INFO] [stdout]   --> src/disk_manager.rs:46:12
[INFO] [stdout]    |
[INFO] [stdout] 31 | impl DiskManager {
[INFO] [stdout]    | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 46 |     pub fn next_page_id(&self) -> &PageId {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 4.78s
[INFO] running `Command { std: "docker" "inspect" "8afc43c378ec9e28eb7e7a6a4626db721a82621028fb6c3958bd729106641f06", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8afc43c378ec9e28eb7e7a6a4626db721a82621028fb6c3958bd729106641f06", kill_on_drop: false }`
[INFO] [stdout] 8afc43c378ec9e28eb7e7a6a4626db721a82621028fb6c3958bd729106641f06
