[INFO] fetching crate bustubx 0.3.0...
[INFO] testing bustubx-0.3.0 against master#c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38 for pr-146098-7
[INFO] extracting crate bustubx 0.3.0 into /workspace/builds/worker-6-tc1/source
[INFO] started tweaking crates.io crate bustubx 0.3.0
[INFO] finished tweaking crates.io crate bustubx 0.3.0
[INFO] tweaked toml for crates.io crate bustubx 0.3.0 written to /workspace/builds/worker-6-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate bustubx 0.3.0 on toolchain c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 51 packages to latest compatible versions
[INFO] [stderr]       Adding dashmap v5.5.3 (available: v6.1.0)
[INFO] [stderr]       Adding derive-new v0.5.9 (available: v0.7.0)
[INFO] [stderr]       Adding derive-with v0.5.0 (available: v0.7.0)
[INFO] [stderr]       Adding itertools v0.11.0 (available: v0.14.0)
[INFO] [stderr]       Adding sqlparser v0.34.0 (available: v0.59.0)
[INFO] [stderr]       Adding strum v0.26.3 (available: v0.27.2)
[INFO] [stderr]       Adding thiserror v1.0.69 (available: v2.0.17)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded comfy-table v7.2.1
[INFO] [stderr]   Downloaded sqlparser v0.34.0
[INFO] [stderr]   Downloaded derive-with v0.5.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 9b3d8adad878f811b020016d82b34cfdb6174936eff715233a024001f9398c15
[INFO] running `Command { std: "docker" "start" "-a" "9b3d8adad878f811b020016d82b34cfdb6174936eff715233a024001f9398c15", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "9b3d8adad878f811b020016d82b34cfdb6174936eff715233a024001f9398c15", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9b3d8adad878f811b020016d82b34cfdb6174936eff715233a024001f9398c15", kill_on_drop: false }`
[INFO] [stdout] 9b3d8adad878f811b020016d82b34cfdb6174936eff715233a024001f9398c15
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 82610d8c94a4aeb723804813d0e4df29d8426be93fae484cbb5d224e8d16dbf6
[INFO] running `Command { std: "docker" "start" "-a" "82610d8c94a4aeb723804813d0e4df29d8426be93fae484cbb5d224e8d16dbf6", kill_on_drop: false }`
[INFO] [stderr]    Compiling rustix v1.1.2
[INFO] [stderr]    Compiling litrs v1.0.0
[INFO] [stderr]    Compiling unicode-segmentation v1.12.0
[INFO] [stderr]    Compiling unicode-width v0.2.2
[INFO] [stderr]    Compiling hashbrown v0.14.5
[INFO] [stderr]    Compiling sqlparser v0.34.0
[INFO] [stderr]    Compiling itertools v0.11.0
[INFO] [stderr]    Compiling syn v2.0.110
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling derive-new v0.5.9
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling dashmap v5.5.3
[INFO] [stderr]    Compiling document-features v0.2.12
[INFO] [stderr]    Compiling crossterm v0.29.0
[INFO] [stderr]    Compiling tempfile v3.23.0
[INFO] [stderr]    Compiling strum_macros v0.26.4
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling derive-with v0.5.0
[INFO] [stderr]    Compiling comfy-table v7.2.1
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling strum v0.26.3
[INFO] [stderr]    Compiling bustubx v0.3.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `crate::storage::codec::TablePageCodec`
[INFO] [stdout]  --> src/catalog/information.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::storage::codec::TablePageCodec;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::storage::codec::BPlusTreePageCodec`
[INFO] [stdout]  --> src/common/util.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::storage::codec::BPlusTreePageCodec;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/execution/physical_plan/values.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `catalog::Schema`
[INFO] [stdout]  --> src/execution/physical_plan/values.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 |     catalog::Schema,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `fetch_tree_internal_page` and `delete_page` are never used
[INFO] [stdout]    --> src/buffer/buffer_pool.rs:142:12
[INFO] [stdout]     |
[INFO] [stdout]  34 | impl BufferPoolManager {
[INFO] [stdout]     | ---------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 142 |     pub fn fetch_tree_internal_page(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 187 |     pub fn delete_page(&self, page_id: PageId) -> BustubxResult<bool> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `destroy` is never used
[INFO] [stdout]   --> src/buffer/page.rs:38:12
[INFO] [stdout]    |
[INFO] [stdout] 26 | impl Page {
[INFO] [stdout]    | --------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 38 |     pub fn destroy(&mut self) {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `name` is never read
[INFO] [stdout]   --> src/catalog/catalog.rs:29:9
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub struct CatalogSchema {
[INFO] [stdout]    |            ------------- field in this struct
[INFO] [stdout] 29 |     pub name: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CatalogSchema` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `name` is never read
[INFO] [stdout]   --> src/catalog/catalog.rs:44:9
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub struct CatalogTable {
[INFO] [stdout]    |            ------------ field in this struct
[INFO] [stdout] 44 |     pub name: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CatalogTable` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pretty_format_index_tree` is never used
[INFO] [stdout]   --> src/common/util.rs:74:15
[INFO] [stdout]    |
[INFO] [stdout] 74 | pub(crate) fn pretty_format_index_tree(index: &BPlusTreeIndex) -> BustubxResult<String> {
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `disk_manager` and `temp_dir` are never read
[INFO] [stdout]   --> src/database.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct Database {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] 21 |     disk_manager: Arc<DiskManager>,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     temp_dir: Option<TempDir>,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `join_type` is never read
[INFO] [stdout]   --> src/execution/physical_plan/nested_loop_join.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct PhysicalNestedLoopJoin {
[INFO] [stdout]    |            ---------------------- field in this struct
[INFO] [stdout] 18 |     pub join_type: JoinType,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PhysicalNestedLoopJoin` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `table_schema` is never read
[INFO] [stdout]   --> src/execution/physical_plan/update.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct PhysicalUpdate {
[INFO] [stdout]    |            -------------- field in this struct
[INFO] [stdout] 13 |     pub table: TableReference,
[INFO] [stdout] 14 |     pub table_schema: SchemaRef,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PhysicalUpdate` 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 `name` is never used
[INFO] [stdout]   --> src/optimizer/logical_optimizer.rs:16:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub trait LogicalOptimizerRule {
[INFO] [stdout]    |           -------------------- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 16 |     fn name(&self) -> &str;
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `with_rules` is never used
[INFO] [stdout]   --> src/optimizer/logical_optimizer.rs:52:12
[INFO] [stdout]    |
[INFO] [stdout] 38 | impl LogicalOptimizer {
[INFO] [stdout]    | --------------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 52 |     pub fn with_rules(rules: Vec<Arc<dyn LogicalOptimizerRule + Send + Sync>>) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `deallocate_page`, `freelist_push`, and `db_file_len` are never used
[INFO] [stdout]    --> src/storage/disk_manager.rs:147:12
[INFO] [stdout]     |
[INFO] [stdout]  26 | impl DiskManager {
[INFO] [stdout]     | ---------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 147 |     pub fn deallocate_page(&self, page_id: PageId) -> BustubxResult<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 158 |     fn freelist_push(&self, page_id: PageId) -> BustubxResult<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 233 |     pub fn db_file_len(&self) -> BustubxResult<u64> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `root_page_id` and `write_set` are never read
[INFO] [stdout]   --> src/storage/index.rs:22:9
[INFO] [stdout]    |
[INFO] [stdout] 21 | struct Context {
[INFO] [stdout]    |        ------- fields in this struct
[INFO] [stdout] 22 |     pub root_page_id: PageId,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 23 |     pub write_set: VecDeque<PageId>,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/storage/index.rs:146:12
[INFO] [stdout]     |
[INFO] [stdout]  46 | impl BPlusTreeIndex {
[INFO] [stdout]     | ------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 146 |     pub fn delete(&self, key: &Tuple) -> BustubxResult<()> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 238 |     pub fn get(&self, key: &Tuple) -> BustubxResult<Option<RecordId>> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 328 |     fn borrow_min_kv(
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 337 |     fn borrow_max_kv(
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 346 |     fn borrow(
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 435 |     fn find_sibling_pages(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 446 |     fn merge(
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 526 |     fn find_subtree_max_leafkv(&self, page_id: PageId) -> BustubxResult<LeafKV> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `is_full` and `push` are never used
[INFO] [stdout]   --> src/storage/page/freelist_page.rs:41:12
[INFO] [stdout]    |
[INFO] [stdout] 29 | impl FreelistPage {
[INFO] [stdout]    | ----------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 41 |     pub fn is_full(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 45 |     pub fn push(&mut self, page_id: PageId) {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `is_underflow` and `can_borrow` are never used
[INFO] [stdout]   --> src/storage/page/index_page.rs:23:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl BPlusTreePage {
[INFO] [stdout]    | ------------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 23 |     pub fn is_underflow(&self, is_root: bool) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 38 |     pub fn can_borrow(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/storage/page/index_page.rs:94:12
[INFO] [stdout]     |
[INFO] [stdout]  82 | impl BPlusTreeInternalPage {
[INFO] [stdout]     | -------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  94 |     pub fn min_size(&self) -> u32 {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  97 |     pub fn key_at(&self, index: usize) -> &Tuple {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 103 |     pub fn values(&self) -> Vec<PageId> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 107 |     pub fn sibling_page_ids(&self, page_id: PageId) -> (Option<PageId>, Option<PageId>) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 145 |     pub fn delete(&mut self, key: &Tuple) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 181 |     pub fn delete_page_id(&mut self, page_id: PageId) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 201 |     pub fn reverse_split_off(&mut self, at: usize) -> Vec<InternalKV> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 210 |     pub fn replace_key(&mut self, old_key: &Tuple, new_key: Tuple) {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 217 |     pub fn key_index(&self, key: &Tuple) -> Option<usize> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `min_size`, `reverse_split_off`, `delete`, `look_up`, and `key_index` are never used
[INFO] [stdout]    --> src/storage/page/index_page.rs:323:12
[INFO] [stdout]     |
[INFO] [stdout] 296 | impl BPlusTreeLeafPage {
[INFO] [stdout]     | ---------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 323 |     pub fn min_size(&self) -> u32 {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 359 |     pub fn reverse_split_off(&mut self, at: usize) -> Vec<LeafKV> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 368 |     pub fn delete(&mut self, key: &Tuple) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 377 |     pub fn look_up(&self, key: &Tuple) -> Option<RecordId> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 382 |     fn key_index(&self, key: &Tuple) -> Option<usize> {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `update_tuple_meta` and `tuple_meta` are never used
[INFO] [stdout]    --> src/storage/page/table_page.rs:156:12
[INFO] [stdout]     |
[INFO] [stdout]  80 | impl TablePage {
[INFO] [stdout]     | -------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 156 |     pub fn update_tuple_meta(&mut self, meta: TupleMeta, slot_num: u16) -> BustubxResult<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 227 |     pub fn tuple_meta(&self, slot_num: u16) -> BustubxResult<TupleMeta> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `update_tuple_meta` and `tuple_meta` are never used
[INFO] [stdout]    --> src/storage/table_heap.rs:124:12
[INFO] [stdout]     |
[INFO] [stdout]  22 | impl TableHeap {
[INFO] [stdout]     | -------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 124 |     pub fn update_tuple_meta(&self, meta: TupleMeta, rid: RecordId) -> BustubxResult<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 149 |     pub fn tuple_meta(&self, rid: RecordId) -> BustubxResult<TupleMeta> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `LockMode` is never used
[INFO] [stdout]  --> src/transaction/lock_manager.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub enum LockMode {
[INFO] [stdout]   |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LockRequest` is never constructed
[INFO] [stdout]   --> src/transaction/lock_manager.rs:15:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct LockRequest {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LockManager` is never constructed
[INFO] [stdout]   --> src/transaction/lock_manager.rs:23:12
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub struct LockManager {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `lock_table`, `unlock_table`, `lock_row`, `unlock_row`, and `unlock_all` are never used
[INFO] [stdout]   --> src/transaction/lock_manager.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 28 | impl LockManager {
[INFO] [stdout]    | ---------------- methods in this implementation
[INFO] [stdout] 29 |     pub fn lock_table(
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 38 |     pub fn unlock_table(&self, _txn: Transaction, _table_ref: TableReference) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 42 |     pub fn lock_row(
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 52 |     pub fn unlock_row(
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 62 |     pub fn unlock_all(&self) {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Transaction` is never constructed
[INFO] [stdout]  --> src/transaction/transaction.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub struct Transaction {}
[INFO] [stdout]   |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `IsolationLevel` is never used
[INFO] [stdout]  --> src/transaction/transaction_manager.rs:3:10
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub enum IsolationLevel {
[INFO] [stdout]   |          ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TransactionManager` is never constructed
[INFO] [stdout]  --> src/transaction/transaction_manager.rs:9:12
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub struct TransactionManager {}
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `begin`, `commit`, and `abort` are never used
[INFO] [stdout]   --> src/transaction/transaction_manager.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl TransactionManager {
[INFO] [stdout]    | ----------------------- methods in this implementation
[INFO] [stdout] 12 |     pub fn begin(&self, _isolation_level: IsolationLevel) -> Transaction {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 16 |     pub fn commit(&self, _txn: Transaction) -> bool {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 20 |     pub fn abort(&self, _txn: Transaction) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 14.31s
[INFO] running `Command { std: "docker" "inspect" "82610d8c94a4aeb723804813d0e4df29d8426be93fae484cbb5d224e8d16dbf6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "82610d8c94a4aeb723804813d0e4df29d8426be93fae484cbb5d224e8d16dbf6", kill_on_drop: false }`
[INFO] [stdout] 82610d8c94a4aeb723804813d0e4df29d8426be93fae484cbb5d224e8d16dbf6
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] f6f3912877ab536a98cf893fbc7a2e91f6e9d7458bea8b623d92e1052e973da9
[INFO] running `Command { std: "docker" "start" "-a" "f6f3912877ab536a98cf893fbc7a2e91f6e9d7458bea8b623d92e1052e973da9", kill_on_drop: false }`
[INFO] [stderr]    Compiling bustubx v0.3.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `crate::storage::codec::TablePageCodec`
[INFO] [stdout]  --> src/catalog/information.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::storage::codec::TablePageCodec;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::storage::codec::BPlusTreePageCodec`
[INFO] [stdout]  --> src/common/util.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::storage::codec::BPlusTreePageCodec;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/execution/physical_plan/values.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `catalog::Schema`
[INFO] [stdout]  --> src/execution/physical_plan/values.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 |     catalog::Schema,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `name` is never read
[INFO] [stdout]   --> src/catalog/catalog.rs:29:9
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub struct CatalogSchema {
[INFO] [stdout]    |            ------------- field in this struct
[INFO] [stdout] 29 |     pub name: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CatalogSchema` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `name` is never read
[INFO] [stdout]   --> src/catalog/catalog.rs:44:9
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub struct CatalogTable {
[INFO] [stdout]    |            ------------ field in this struct
[INFO] [stdout] 44 |     pub name: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CatalogTable` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `disk_manager` and `temp_dir` are never read
[INFO] [stdout]   --> src/database.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct Database {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] 21 |     disk_manager: Arc<DiskManager>,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     temp_dir: Option<TempDir>,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `join_type` is never read
[INFO] [stdout]   --> src/execution/physical_plan/nested_loop_join.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct PhysicalNestedLoopJoin {
[INFO] [stdout]    |            ---------------------- field in this struct
[INFO] [stdout] 18 |     pub join_type: JoinType,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PhysicalNestedLoopJoin` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `table_schema` is never read
[INFO] [stdout]   --> src/execution/physical_plan/update.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct PhysicalUpdate {
[INFO] [stdout]    |            -------------- field in this struct
[INFO] [stdout] 13 |     pub table: TableReference,
[INFO] [stdout] 14 |     pub table_schema: SchemaRef,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PhysicalUpdate` 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 `name` is never used
[INFO] [stdout]   --> src/optimizer/logical_optimizer.rs:16:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub trait LogicalOptimizerRule {
[INFO] [stdout]    |           -------------------- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 16 |     fn name(&self) -> &str;
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `root_page_id` and `write_set` are never read
[INFO] [stdout]   --> src/storage/index.rs:22:9
[INFO] [stdout]    |
[INFO] [stdout] 21 | struct Context {
[INFO] [stdout]    |        ------- fields in this struct
[INFO] [stdout] 22 |     pub root_page_id: PageId,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 23 |     pub write_set: VecDeque<PageId>,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `find_subtree_max_leafkv` is never used
[INFO] [stdout]    --> src/storage/index.rs:526:8
[INFO] [stdout]     |
[INFO] [stdout]  46 | impl BPlusTreeIndex {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 526 |     fn find_subtree_max_leafkv(&self, page_id: PageId) -> BustubxResult<LeafKV> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `LockMode` is never used
[INFO] [stdout]  --> src/transaction/lock_manager.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub enum LockMode {
[INFO] [stdout]   |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LockRequest` is never constructed
[INFO] [stdout]   --> src/transaction/lock_manager.rs:15:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct LockRequest {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LockManager` is never constructed
[INFO] [stdout]   --> src/transaction/lock_manager.rs:23:12
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub struct LockManager {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `lock_table`, `unlock_table`, `lock_row`, `unlock_row`, and `unlock_all` are never used
[INFO] [stdout]   --> src/transaction/lock_manager.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 28 | impl LockManager {
[INFO] [stdout]    | ---------------- methods in this implementation
[INFO] [stdout] 29 |     pub fn lock_table(
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 38 |     pub fn unlock_table(&self, _txn: Transaction, _table_ref: TableReference) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 42 |     pub fn lock_row(
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 52 |     pub fn unlock_row(
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 62 |     pub fn unlock_all(&self) {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Transaction` is never constructed
[INFO] [stdout]  --> src/transaction/transaction.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub struct Transaction {}
[INFO] [stdout]   |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `IsolationLevel` is never used
[INFO] [stdout]  --> src/transaction/transaction_manager.rs:3:10
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub enum IsolationLevel {
[INFO] [stdout]   |          ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TransactionManager` is never constructed
[INFO] [stdout]  --> src/transaction/transaction_manager.rs:9:12
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub struct TransactionManager {}
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `begin`, `commit`, and `abort` are never used
[INFO] [stdout]   --> src/transaction/transaction_manager.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl TransactionManager {
[INFO] [stdout]    | ----------------------- methods in this implementation
[INFO] [stdout] 12 |     pub fn begin(&self, _isolation_level: IsolationLevel) -> Transaction {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 16 |     pub fn commit(&self, _txn: Transaction) -> bool {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 20 |     pub fn abort(&self, _txn: Transaction) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 4.14s
[INFO] running `Command { std: "docker" "inspect" "f6f3912877ab536a98cf893fbc7a2e91f6e9d7458bea8b623d92e1052e973da9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f6f3912877ab536a98cf893fbc7a2e91f6e9d7458bea8b623d92e1052e973da9", kill_on_drop: false }`
[INFO] [stdout] f6f3912877ab536a98cf893fbc7a2e91f6e9d7458bea8b623d92e1052e973da9
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 83cd98821dd85bd61cd84f6ddb006ebffe97219600c909ff33416f67d2071ac3
[INFO] running `Command { std: "docker" "start" "-a" "83cd98821dd85bd61cd84f6ddb006ebffe97219600c909ff33416f67d2071ac3", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `crate::storage::codec::TablePageCodec`
[INFO] [stderr]  --> src/catalog/information.rs:5:5
[INFO] [stderr]   |
[INFO] [stderr] 5 | use crate::storage::codec::TablePageCodec;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::storage::codec::BPlusTreePageCodec`
[INFO] [stderr]  --> src/common/util.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | use crate::storage::codec::BPlusTreePageCodec;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::sync::Arc`
[INFO] [stderr]  --> src/execution/physical_plan/values.rs:2:5
[INFO] [stderr]   |
[INFO] [stderr] 2 | use std::sync::Arc;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `catalog::Schema`
[INFO] [stderr]  --> src/execution/physical_plan/values.rs:9:5
[INFO] [stderr]   |
[INFO] [stderr] 9 |     catalog::Schema,
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `name` is never read
[INFO] [stderr]   --> src/catalog/catalog.rs:29:9
[INFO] [stderr]    |
[INFO] [stderr] 28 | pub struct CatalogSchema {
[INFO] [stderr]    |            ------------- field in this struct
[INFO] [stderr] 29 |     pub name: String,
[INFO] [stderr]    |         ^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `CatalogSchema` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: field `name` is never read
[INFO] [stderr]   --> src/catalog/catalog.rs:44:9
[INFO] [stderr]    |
[INFO] [stderr] 43 | pub struct CatalogTable {
[INFO] [stderr]    |            ------------ field in this struct
[INFO] [stderr] 44 |     pub name: String,
[INFO] [stderr]    |         ^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `CatalogTable` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: fields `disk_manager` and `temp_dir` are never read
[INFO] [stderr]   --> src/database.rs:21:5
[INFO] [stderr]    |
[INFO] [stderr] 20 | pub struct Database {
[INFO] [stderr]    |            -------- fields in this struct
[INFO] [stderr] 21 |     disk_manager: Arc<DiskManager>,
[INFO] [stderr]    |     ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 24 |     temp_dir: Option<TempDir>,
[INFO] [stderr]    |     ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `join_type` is never read
[INFO] [stderr]   --> src/execution/physical_plan/nested_loop_join.rs:18:9
[INFO] [stderr]    |
[INFO] [stderr] 17 | pub struct PhysicalNestedLoopJoin {
[INFO] [stderr]    |            ---------------------- field in this struct
[INFO] [stderr] 18 |     pub join_type: JoinType,
[INFO] [stderr]    |         ^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `PhysicalNestedLoopJoin` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: field `table_schema` is never read
[INFO] [stderr]   --> src/execution/physical_plan/update.rs:14:9
[INFO] [stderr]    |
[INFO] [stderr] 12 | pub struct PhysicalUpdate {
[INFO] [stderr]    |            -------------- field in this struct
[INFO] [stderr] 13 |     pub table: TableReference,
[INFO] [stderr] 14 |     pub table_schema: SchemaRef,
[INFO] [stderr]    |         ^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `PhysicalUpdate` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: method `name` is never used
[INFO] [stderr]   --> src/optimizer/logical_optimizer.rs:16:8
[INFO] [stderr]    |
[INFO] [stderr] 10 | pub trait LogicalOptimizerRule {
[INFO] [stderr]    |           -------------------- method in this trait
[INFO] [stderr] ...
[INFO] [stderr] 16 |     fn name(&self) -> &str;
[INFO] [stderr]    |        ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `root_page_id` and `write_set` are never read
[INFO] [stderr]   --> src/storage/index.rs:22:9
[INFO] [stderr]    |
[INFO] [stderr] 21 | struct Context {
[INFO] [stderr]    |        ------- fields in this struct
[INFO] [stderr] 22 |     pub root_page_id: PageId,
[INFO] [stderr]    |         ^^^^^^^^^^^^
[INFO] [stderr] 23 |     pub write_set: VecDeque<PageId>,
[INFO] [stderr]    |         ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `find_subtree_max_leafkv` is never used
[INFO] [stderr]    --> src/storage/index.rs:526:8
[INFO] [stderr]     |
[INFO] [stderr]  46 | impl BPlusTreeIndex {
[INFO] [stderr]     | ------------------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 526 |     fn find_subtree_max_leafkv(&self, page_id: PageId) -> BustubxResult<LeafKV> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: enum `LockMode` is never used
[INFO] [stderr]  --> src/transaction/lock_manager.rs:7:10
[INFO] [stderr]   |
[INFO] [stderr] 7 | pub enum LockMode {
[INFO] [stderr]   |          ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `LockRequest` is never constructed
[INFO] [stderr]   --> src/transaction/lock_manager.rs:15:12
[INFO] [stderr]    |
[INFO] [stderr] 15 | pub struct LockRequest {
[INFO] [stderr]    |            ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `LockManager` is never constructed
[INFO] [stderr]   --> src/transaction/lock_manager.rs:23:12
[INFO] [stderr]    |
[INFO] [stderr] 23 | pub struct LockManager {
[INFO] [stderr]    |            ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: methods `lock_table`, `unlock_table`, `lock_row`, `unlock_row`, and `unlock_all` are never used
[INFO] [stderr]   --> src/transaction/lock_manager.rs:29:12
[INFO] [stderr]    |
[INFO] [stderr] 28 | impl LockManager {
[INFO] [stderr]    | ---------------- methods in this implementation
[INFO] [stderr] 29 |     pub fn lock_table(
[INFO] [stderr]    |            ^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 38 |     pub fn unlock_table(&self, _txn: Transaction, _table_ref: TableReference) -> bool {
[INFO] [stderr]    |            ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 42 |     pub fn lock_row(
[INFO] [stderr]    |            ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 52 |     pub fn unlock_row(
[INFO] [stderr]    |            ^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 62 |     pub fn unlock_all(&self) {
[INFO] [stderr]    |            ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Transaction` is never constructed
[INFO] [stderr]  --> src/transaction/transaction.rs:1:12
[INFO] [stderr]   |
[INFO] [stderr] 1 | pub struct Transaction {}
[INFO] [stderr]   |            ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: enum `IsolationLevel` is never used
[INFO] [stderr]  --> src/transaction/transaction_manager.rs:3:10
[INFO] [stderr]   |
[INFO] [stderr] 3 | pub enum IsolationLevel {
[INFO] [stderr]   |          ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `TransactionManager` is never constructed
[INFO] [stderr]  --> src/transaction/transaction_manager.rs:9:12
[INFO] [stderr]   |
[INFO] [stderr] 9 | pub struct TransactionManager {}
[INFO] [stderr]   |            ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: methods `begin`, `commit`, and `abort` are never used
[INFO] [stderr]   --> src/transaction/transaction_manager.rs:12:12
[INFO] [stderr]    |
[INFO] [stderr] 11 | impl TransactionManager {
[INFO] [stderr]    | ----------------------- methods in this implementation
[INFO] [stderr] 12 |     pub fn begin(&self, _isolation_level: IsolationLevel) -> Transaction {
[INFO] [stderr]    |            ^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 16 |     pub fn commit(&self, _txn: Transaction) -> bool {
[INFO] [stderr]    |            ^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 20 |     pub fn abort(&self, _txn: Transaction) {
[INFO] [stderr]    |            ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `bustubx` (lib test) generated 20 warnings (run `cargo fix --lib -p bustubx --tests` to apply 4 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.12s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/bustubx-f5584a7a651c6b7c)
[INFO] [stdout] 
[INFO] [stdout] running 41 tests
[INFO] [stdout] test buffer::replacer::tests::test_lru_k_set_evictable ... ok
[INFO] [stdout] test buffer::replacer::tests::test_lru_k_cmu_bustub_test_case ... ok
[INFO] [stdout] test buffer::replacer::tests::test_lru_k_evict_all_pages_at_least_k ... ok
[INFO] [stdout] test optimizer::rule::merge_limit::tests::merge_limit ... ok
[INFO] [stdout] test storage::codec::freelist_page::tests::freelist_page_codec ... ok
[INFO] [stdout] test buffer::replacer::tests::test_lru_k_evict_some_page_less_than_k ... ok
[INFO] [stdout] test buffer::page::tests::page_ref ... ok
[INFO] [stdout] test common::bitmap::tests::dynamic_bitmap ... ok
[INFO] [stdout] test buffer::buffer_pool::tests::test_buffer_pool_manager_fetch_page ... ok
[INFO] [stdout] test storage::codec::table_page::tests::table_page_codec ... ok
[INFO] [stdout] test storage::codec::common::tests::common_codec ... ok
[INFO] [stdout] test storage::codec::meta_page::tests::meta_page_codec ... ok
[INFO] [stdout] test buffer::buffer_pool::tests::test_buffer_pool_manager_delete_page ... ok
[INFO] [stdout] test buffer::buffer_pool::tests::test_buffer_pool_manager_new_page ... ok
[INFO] [stdout] test buffer::buffer_pool::tests::test_buffer_pool_manager_unpin_page ... ok
[INFO] [stdout] test storage::codec::tuple::tests::tuple_codec ... ok
[INFO] [stdout] test storage::disk_manager::tests::test_disk_manager_freelist ... ok
[INFO] [stdout] test storage::disk_manager::tests::test_disk_manager_write_read_page ... ok
[INFO] [stdout] test storage::codec::index_page::tests::index_page_codec ... ok
[INFO] [stdout] test storage::page::index_page::tests::test_internal_page_delete ... ok
[INFO] [stdout] test storage::page::index_page::tests::test_internal_page_look_up ... ok
[INFO] [stdout] test storage::page::table_page::tests::test_table_page_get_tuple ... ok
[INFO] [stdout] test storage::page::index_page::tests::test_leaf_page_delete ... ok
[INFO] [stdout] test storage::page::index_page::tests::test_internal_page_insert ... ok
[INFO] [stdout] test storage::page::table_page::tests::test_table_page_update_tuple_meta ... ok
[INFO] [stdout] test storage::page::index_page::tests::test_leaf_page_insert ... ok
[INFO] [stdout] test storage::tuple::tests::tuple_compare ... ok
[INFO] [stdout] test storage::index::tests::test_index_iterator ... ok
[INFO] [stdout] test storage::page::index_page::tests::test_leaf_page_look_up ... ok
[INFO] [stdout] test catalog::data_type::tests::parse_data_type ... ok
[INFO] [stdout] test storage::index::tests::test_index_delete ... ok
[INFO] [stdout] test storage::table_heap::tests::test_table_heap_insert_tuple ... ok
[INFO] [stdout] test catalog::catalog::tests::test_catalog_create_table ... ok
[INFO] [stdout] test optimizer::rule::push_down_limit::tests::push_down_limit ... ok
[INFO] [stdout] test parser::tests::test_parser ... ok
[INFO] [stdout] test storage::table_heap::tests::test_table_heap_update_tuple_meta ... ok
[INFO] [stdout] test storage::index::tests::test_index_get ... ok
[INFO] [stdout] test catalog::catalog::tests::test_catalog_create_index ... ok
[INFO] [stdout] test storage::index::tests::test_index_insert ... ok
[INFO] [stdout] test optimizer::rule::eliminate_limit::tests::eliminate_limit ... ok
[INFO] [stdout] test storage::table_heap::tests::test_table_heap_iterator ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 41 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.08s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "83cd98821dd85bd61cd84f6ddb006ebffe97219600c909ff33416f67d2071ac3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "83cd98821dd85bd61cd84f6ddb006ebffe97219600c909ff33416f67d2071ac3", kill_on_drop: false }`
[INFO] [stdout] 83cd98821dd85bd61cd84f6ddb006ebffe97219600c909ff33416f67d2071ac3
