[INFO] cloning repository https://github.com/rong9490/bitcask-rs
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/rong9490/bitcask-rs" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Frong9490%2Fbitcask-rs", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Frong9490%2Fbitcask-rs'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 92aa9ae788c211e4ff71b36abdae85855e3fd584
[INFO] checking rong9490/bitcask-rs against try#ddcf048784667508cd676fef4667f88ae15628a3 for pr-148271
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Frong9490%2Fbitcask-rs" "/workspace/builds/worker-2-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/rong9490/bitcask-rs
[INFO] finished tweaking git repo https://github.com/rong9490/bitcask-rs
[INFO] tweaked toml for git repo https://github.com/rong9490/bitcask-rs written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/rong9490/bitcask-rs on toolchain ddcf048784667508cd676fef4667f88ae15628a3
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ddcf048784667508cd676fef4667f88ae15628a3" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/rong9490/bitcask-rs 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" "+ddcf048784667508cd676fef4667f88ae15628a3" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: /workspace/builds/worker-2-tc2/source/Cargo.toml: unused manifest key: workspace.edition
[INFO] [stderr] warning: /workspace/builds/worker-2-tc2/source/Cargo.toml: unused manifest key: workspace.name
[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 jammdb v0.11.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+ddcf048784667508cd676fef4667f88ae15628a3" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 402efcc8aa3797bbf31523c3b2782f03a0ad831ce57b65cd02bce8a4948b2958
[INFO] running `Command { std: "docker" "start" "-a" "402efcc8aa3797bbf31523c3b2782f03a0ad831ce57b65cd02bce8a4948b2958", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "402efcc8aa3797bbf31523c3b2782f03a0ad831ce57b65cd02bce8a4948b2958", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "402efcc8aa3797bbf31523c3b2782f03a0ad831ce57b65cd02bce8a4948b2958", kill_on_drop: false }`
[INFO] [stdout] 402efcc8aa3797bbf31523c3b2782f03a0ad831ce57b65cd02bce8a4948b2958
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+ddcf048784667508cd676fef4667f88ae15628a3" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 5bb3662a222db5299b55d4e5c8499d78eecf9693a444c771b6331d965810e976
[INFO] running `Command { std: "docker" "start" "-a" "5bb3662a222db5299b55d4e5c8499d78eecf9693a444c771b6331d965810e976", kill_on_drop: false }`
[INFO] [stderr] warning: /opt/rustwide/workdir/Cargo.toml: unused manifest key: workspace.edition
[INFO] [stderr] warning: /opt/rustwide/workdir/Cargo.toml: unused manifest key: workspace.name
[INFO] [stderr]    Compiling typenum v1.19.0
[INFO] [stderr]    Compiling rustix v0.38.44
[INFO] [stderr]     Checking bitflags v2.9.4
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling thiserror v2.0.17
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]    Compiling anyhow v1.0.100
[INFO] [stderr]     Checking bumpalo v3.19.0
[INFO] [stderr]    Compiling syn v2.0.106
[INFO] [stderr]     Checking memmap2 v0.9.8
[INFO] [stderr]     Checking parking_lot_core v0.9.11
[INFO] [stderr]     Checking page_size v0.6.0
[INFO] [stderr]     Checking fs2 v0.4.3
[INFO] [stderr]     Checking fs_extra v1.3.0
[INFO] [stderr]     Checking parking_lot v0.12.4
[INFO] [stderr]    Compiling itertools v0.14.0
[INFO] [stderr]     Checking crossbeam-epoch v0.9.18
[INFO] [stderr]     Checking crossbeam-skiplist v0.1.3
[INFO] [stderr]     Checking generic-array v0.14.7
[INFO] [stderr]     Checking block-buffer v0.10.4
[INFO] [stderr]     Checking crypto-common v0.1.6
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]     Checking sha3 v0.10.8
[INFO] [stderr]     Checking fs4 v0.7.0
[INFO] [stderr]     Checking jammdb v0.11.0
[INFO] [stderr]    Compiling prost-derive v0.14.1
[INFO] [stderr]    Compiling thiserror-impl v2.0.17
[INFO] [stderr]     Checking prost v0.14.1
[INFO] [stderr]     Checking bitcask v0.1.0 (/opt/rustwide/workdir/bitcask)
[INFO] [stdout] error[E0432]: unresolved imports `crate::batch::parse_log_record_key`, `crate::batch::NON_TRANSACTION_SEQ_NO`, `crate::data::log_record`, `crate::db::Engine`, `crate::db::FILE_LOCK_NAME`, `crate::options::IOType`, `crate::options::Options`, `crate::util`
[INFO] [stdout]   --> bitcask/src/merge/mod.rs:14:20
[INFO] [stdout]    |
[INFO] [stdout] 14 |     batch::{utils, parse_log_record_key, NON_TRANSACTION_SEQ_NO},
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^ no `NON_TRANSACTION_SEQ_NO` in `batch`
[INFO] [stdout]    |                    |
[INFO] [stdout]    |                    no `parse_log_record_key` in `batch`
[INFO] [stdout] 15 |     data::{
[INFO] [stdout] 16 |         log_record::{decode_log_record_pos, LogRecordType},
[INFO] [stdout]    |         ^^^^^^^^^^ could not find `log_record` in `data`
[INFO] [stdout] 17 |     },
[INFO] [stdout] 18 |     db::{Engine, FILE_LOCK_NAME},
[INFO] [stdout]    |          ^^^^^^  ^^^^^^^^^^^^^^ no `FILE_LOCK_NAME` in `db`
[INFO] [stdout]    |          |
[INFO] [stdout]    |          no `Engine` in `db`
[INFO] [stdout] 19 |     options::{IOType, Options},
[INFO] [stdout]    |               ^^^^^^  ^^^^^^^ no `Options` in `options`
[INFO] [stdout]    |               |
[INFO] [stdout]    |               no `IOType` in `options`
[INFO] [stdout] 20 |     util,
[INFO] [stdout]    |     ^^^^ no `util` in the root
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider importing this struct instead:
[INFO] [stdout]            crate::db::engine::Engine
[INFO] [stdout]    = help: consider importing this enum instead:
[INFO] [stdout]            crate::options::io_type::IOType
[INFO] [stdout]    = help: consider importing this struct instead:
[INFO] [stdout]            crate::options::options::Options
[INFO] [stdout] help: a similar name exists in the module
[INFO] [stdout]    |
[INFO] [stdout] 18 -     db::{Engine, FILE_LOCK_NAME},
[INFO] [stdout] 18 +     db::{engine, FILE_LOCK_NAME},
[INFO] [stdout]    |
[INFO] [stdout] help: a similar name exists in the module (notice the capitalization)
[INFO] [stdout]    |
[INFO] [stdout] 19 -     options::{IOType, Options},
[INFO] [stdout] 19 +     options::{IOType, options},
[INFO] [stdout]    |
[INFO] [stdout] help: a similar name exists in the module
[INFO] [stdout]    |
[INFO] [stdout] 20 |     utils,
[INFO] [stdout]    |         +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `warn` in this scope
[INFO] [stdout]   --> bitcask/src/db/engine.rs:54:17
[INFO] [stdout]    |
[INFO] [stdout] 54 |                 warn!("create database directory err: {}", e);
[INFO] [stdout]    |                 ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `warn` is in scope, but it is an attribute: `#[warn]`
[INFO] [stdout] help: consider importing this macro
[INFO] [stdout]    |
[INFO] [stdout]  1 + use log::warn;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `log_record_key_with_seq` in this scope
[INFO] [stdout]   --> bitcask/src/merge/mod.rs:97:29
[INFO] [stdout]    |
[INFO] [stdout] 97 | ...                   log_record_key_with_seq(real_key.clone(), NON_TRANSACTION_SEQ_NO);
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] note: function `crate::batch::utils::log_record_key_with_seq` exists but is inaccessible
[INFO] [stdout]   --> bitcask/src/batch/utils.rs:5:1
[INFO] [stdout]    |
[INFO] [stdout]  5 | pub(crate) fn log_record_key_with_seq(key: Vec<u8>, seq_no: usize) -> Vec<u8> {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not accessible
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `IndexType`
[INFO] [stdout]    --> bitcask/src/db/engine.rs:122:41
[INFO] [stdout]     |
[INFO] [stdout] 122 |         if engine.options.index_type != IndexType::BPlusTree {
[INFO] [stdout]     |                                         ^^^^^^^^^ use of undeclared type `IndexType`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::options::index_type::IndexType;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Ordering`
[INFO] [stdout]    --> bitcask/src/db/engine.rs:131:57
[INFO] [stdout]     |
[INFO] [stdout] 131 |                 engine.seq_no.store(current_seq_no + 1, Ordering::SeqCst);
[INFO] [stdout]     |                                                         ^^^^^^^^ use of undeclared type `Ordering`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these enums
[INFO] [stdout]     |
[INFO] [stdout]   1 + use std::cmp::Ordering;
[INFO] [stdout]     |
[INFO] [stdout]   1 + use std::sync::atomic::Ordering;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `IndexType`
[INFO] [stdout]    --> bitcask/src/db/engine.rs:140:41
[INFO] [stdout]     |
[INFO] [stdout] 140 |         if engine.options.index_type == IndexType::BPlusTree {
[INFO] [stdout]     |                                         ^^^^^^^^^ use of undeclared type `IndexType`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::options::index_type::IndexType;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Ordering`
[INFO] [stdout]    --> bitcask/src/db/engine.rs:144:45
[INFO] [stdout]     |
[INFO] [stdout] 144 |                 engine.seq_no.store(seq_no, Ordering::SeqCst);
[INFO] [stdout]     |                                             ^^^^^^^^ use of undeclared type `Ordering`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these enums
[INFO] [stdout]     |
[INFO] [stdout]   1 + use std::cmp::Ordering;
[INFO] [stdout]     |
[INFO] [stdout]   1 + use std::sync::atomic::Ordering;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0603]: module `utils` is private
[INFO] [stdout]   --> bitcask/src/merge/mod.rs:14:13
[INFO] [stdout]    |
[INFO] [stdout] 14 |     batch::{utils, parse_log_record_key, NON_TRANSACTION_SEQ_NO},
[INFO] [stdout]    |             ^^^^^ private module
[INFO] [stdout]    |
[INFO] [stdout] note: the module `utils` is defined here
[INFO] [stdout]   --> bitcask/src/batch/mod.rs:4:1
[INFO] [stdout]    |
[INFO] [stdout]  4 | mod utils;
[INFO] [stdout]    | ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::index`
[INFO] [stdout]  --> bitcask/src/db/engine.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::index;
[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: `BytesMut`
[INFO] [stdout]  --> bitcask/src/batch/write_batch.rs:4:28
[INFO] [stdout]   |
[INFO] [stdout] 4 | use bytes::{BufMut, Bytes, BytesMut};
[INFO] [stdout]   |                            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::options::index_type::IndexType`
[INFO] [stdout]   --> bitcask/src/batch/write_batch.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::options::index_type::IndexType;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `parse_log_record_key`
[INFO] [stdout]   --> bitcask/src/batch/write_batch.rs:15:45
[INFO] [stdout]    |
[INFO] [stdout] 15 | use super::utils::{log_record_key_with_seq, parse_log_record_key};
[INFO] [stdout]    |                                             ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `util` in the crate root
[INFO] [stdout]    --> bitcask/src/merge/mod.rs:291:16
[INFO] [stdout]     |
[INFO] [stdout] 291 |     use crate::util::rand_kv::{get_test_key, get_test_value};
[INFO] [stdout]     |                ^^^^ could not find `util` in the crate root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved imports `crate::batch::parse_log_record_key`, `crate::batch::NON_TRANSACTION_SEQ_NO`, `crate::data::log_record`, `crate::db::Engine`, `crate::db::FILE_LOCK_NAME`, `crate::options::IOType`, `crate::options::Options`, `crate::util`
[INFO] [stdout]   --> bitcask/src/merge/mod.rs:14:20
[INFO] [stdout]    |
[INFO] [stdout] 14 |     batch::{utils, parse_log_record_key, NON_TRANSACTION_SEQ_NO},
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^ no `NON_TRANSACTION_SEQ_NO` in `batch`
[INFO] [stdout]    |                    |
[INFO] [stdout]    |                    no `parse_log_record_key` in `batch`
[INFO] [stdout] 15 |     data::{
[INFO] [stdout] 16 |         log_record::{decode_log_record_pos, LogRecordType},
[INFO] [stdout]    |         ^^^^^^^^^^ could not find `log_record` in `data`
[INFO] [stdout] 17 |     },
[INFO] [stdout] 18 |     db::{Engine, FILE_LOCK_NAME},
[INFO] [stdout]    |          ^^^^^^  ^^^^^^^^^^^^^^ no `FILE_LOCK_NAME` in `db`
[INFO] [stdout]    |          |
[INFO] [stdout]    |          no `Engine` in `db`
[INFO] [stdout] 19 |     options::{IOType, Options},
[INFO] [stdout]    |               ^^^^^^  ^^^^^^^ no `Options` in `options`
[INFO] [stdout]    |               |
[INFO] [stdout]    |               no `IOType` in `options`
[INFO] [stdout] 20 |     util,
[INFO] [stdout]    |     ^^^^ no `util` in the root
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider importing this struct instead:
[INFO] [stdout]            crate::db::engine::Engine
[INFO] [stdout]    = help: consider importing this enum instead:
[INFO] [stdout]            crate::options::io_type::IOType
[INFO] [stdout]    = help: consider importing this struct instead:
[INFO] [stdout]            crate::options::options::Options
[INFO] [stdout] help: a similar name exists in the module
[INFO] [stdout]    |
[INFO] [stdout] 18 -     db::{Engine, FILE_LOCK_NAME},
[INFO] [stdout] 18 +     db::{engine, FILE_LOCK_NAME},
[INFO] [stdout]    |
[INFO] [stdout] help: a similar name exists in the module (notice the capitalization)
[INFO] [stdout]    |
[INFO] [stdout] 19 -     options::{IOType, Options},
[INFO] [stdout] 19 +     options::{IOType, options},
[INFO] [stdout]    |
[INFO] [stdout] help: a similar name exists in the module
[INFO] [stdout]    |
[INFO] [stdout] 20 |     utils,
[INFO] [stdout]    |         +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `warn` in this scope
[INFO] [stdout]   --> bitcask/src/db/engine.rs:54:17
[INFO] [stdout]    |
[INFO] [stdout] 54 |                 warn!("create database directory err: {}", e);
[INFO] [stdout]    |                 ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `warn` is in scope, but it is an attribute: `#[warn]`
[INFO] [stdout] help: consider importing this macro
[INFO] [stdout]    |
[INFO] [stdout]  1 + use log::warn;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `log_record_key_with_seq` in this scope
[INFO] [stdout]   --> bitcask/src/merge/mod.rs:97:29
[INFO] [stdout]    |
[INFO] [stdout] 97 | ...                   log_record_key_with_seq(real_key.clone(), NON_TRANSACTION_SEQ_NO);
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] note: function `crate::batch::utils::log_record_key_with_seq` exists but is inaccessible
[INFO] [stdout]   --> bitcask/src/batch/utils.rs:5:1
[INFO] [stdout]    |
[INFO] [stdout]  5 | pub(crate) fn log_record_key_with_seq(key: Vec<u8>, seq_no: usize) -> Vec<u8> {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not accessible
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `IndexType`
[INFO] [stdout]    --> bitcask/src/db/engine.rs:122:41
[INFO] [stdout]     |
[INFO] [stdout] 122 |         if engine.options.index_type != IndexType::BPlusTree {
[INFO] [stdout]     |                                         ^^^^^^^^^ use of undeclared type `IndexType`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::options::index_type::IndexType;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Ordering`
[INFO] [stdout]    --> bitcask/src/db/engine.rs:131:57
[INFO] [stdout]     |
[INFO] [stdout] 131 |                 engine.seq_no.store(current_seq_no + 1, Ordering::SeqCst);
[INFO] [stdout]     |                                                         ^^^^^^^^ use of undeclared type `Ordering`
[INFO] [stdout]     |
[INFO] [stdout]     = note: enum `crate::merge::tests::Ordering` exists but is inaccessible
[INFO] [stdout] help: consider importing one of these enums
[INFO] [stdout]     |
[INFO] [stdout]   1 + use std::cmp::Ordering;
[INFO] [stdout]     |
[INFO] [stdout]   1 + use std::sync::atomic::Ordering;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `IndexType`
[INFO] [stdout]    --> bitcask/src/db/engine.rs:140:41
[INFO] [stdout]     |
[INFO] [stdout] 140 |         if engine.options.index_type == IndexType::BPlusTree {
[INFO] [stdout]     |                                         ^^^^^^^^^ use of undeclared type `IndexType`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   1 + use crate::options::index_type::IndexType;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Ordering`
[INFO] [stdout]    --> bitcask/src/db/engine.rs:144:45
[INFO] [stdout]     |
[INFO] [stdout] 144 |                 engine.seq_no.store(seq_no, Ordering::SeqCst);
[INFO] [stdout]     |                                             ^^^^^^^^ use of undeclared type `Ordering`
[INFO] [stdout]     |
[INFO] [stdout]     = note: enum `crate::merge::tests::Ordering` exists but is inaccessible
[INFO] [stdout] help: consider importing one of these enums
[INFO] [stdout]     |
[INFO] [stdout]   1 + use std::cmp::Ordering;
[INFO] [stdout]     |
[INFO] [stdout]   1 + use std::sync::atomic::Ordering;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0603]: module `utils` is private
[INFO] [stdout]   --> bitcask/src/merge/mod.rs:14:13
[INFO] [stdout]    |
[INFO] [stdout] 14 |     batch::{utils, parse_log_record_key, NON_TRANSACTION_SEQ_NO},
[INFO] [stdout]    |             ^^^^^ private module
[INFO] [stdout]    |
[INFO] [stdout] note: the module `utils` is defined here
[INFO] [stdout]   --> bitcask/src/batch/mod.rs:4:1
[INFO] [stdout]    |
[INFO] [stdout]  4 | mod utils;
[INFO] [stdout]    | ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::index`
[INFO] [stdout]  --> bitcask/src/db/engine.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::index;
[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: `BytesMut`
[INFO] [stdout]  --> bitcask/src/batch/write_batch.rs:4:28
[INFO] [stdout]   |
[INFO] [stdout] 4 | use bytes::{BufMut, Bytes, BytesMut};
[INFO] [stdout]   |                            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::options::index_type::IndexType`
[INFO] [stdout]   --> bitcask/src/batch/write_batch.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::options::index_type::IndexType;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `parse_log_record_key`
[INFO] [stdout]   --> bitcask/src/batch/write_batch.rs:15:45
[INFO] [stdout]    |
[INFO] [stdout] 15 | use super::utils::{log_record_key_with_seq, parse_log_record_key};
[INFO] [stdout]    |                                             ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `read_log_record` found for reference `&DataFile` in the current scope
[INFO] [stdout]   --> bitcask/src/merge/mod.rs:80:62
[INFO] [stdout]    |
[INFO] [stdout] 80 |                 let (mut log_record, size) = match data_file.read_log_record(offset) {
[INFO] [stdout]    |                                                              ^^^^^^^^^^^^^^^ method not found in `&DataFile`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> bitcask/src/merge/mod.rs:92:57
[INFO] [stdout]    |
[INFO] [stdout] 92 |                 if let Some(index_pos) = self.index.get(real_key.clone()) {
[INFO] [stdout]    |                                                         ^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `get_file_id` found for reference `&DataFile` in the current scope
[INFO] [stdout]   --> bitcask/src/merge/mod.rs:94:55
[INFO] [stdout]    |
[INFO] [stdout] 94 |                     if index_pos.file_id == data_file.get_file_id() && index_pos.offset == offset {
[INFO] [stdout]    |                                                       ^^^^^^^^^^^ method not found in `&DataFile`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `append_log_record` found for struct `Engine` in the current scope
[INFO] [stdout]   --> bitcask/src/merge/mod.rs:98:55
[INFO] [stdout]    |
[INFO] [stdout] 98 |                         let log_record_pos = merge_db.append_log_record(&mut log_record)?;
[INFO] [stdout]    |                                                       ^^^^^^^^^^^^^^^^^ method not found in `Engine`
[INFO] [stdout]    |
[INFO] [stdout]   ::: bitcask/src/db/engine.rs:23:1
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub struct Engine {
[INFO] [stdout]    | ----------------- method `append_log_record` not found for this struct
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `write_hint_record` found for struct `DataFile` in the current scope
[INFO] [stdout]    --> bitcask/src/merge/mod.rs:100:35
[INFO] [stdout]     |
[INFO] [stdout] 100 |                         hint_file.write_hint_record(real_key.clone(), log_record_pos)?;
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^ method not found in `DataFile`
[INFO] [stdout]     |
[INFO] [stdout]    ::: bitcask/src/data/data_files_mod/data_file.rs:10:1
[INFO] [stdout]     |
[INFO] [stdout]  10 | pub struct DataFile {
[INFO] [stdout]     | ------------------- method `write_hint_record` not found for this struct
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `sync` found for struct `Engine` in the current scope
[INFO] [stdout]    --> bitcask/src/merge/mod.rs:108:18
[INFO] [stdout]     |
[INFO] [stdout] 108 |         merge_db.sync()?;
[INFO] [stdout]     |                  ^^^^ method not found in `Engine`
[INFO] [stdout]     |
[INFO] [stdout]    ::: bitcask/src/db/engine.rs:23:1
[INFO] [stdout]     |
[INFO] [stdout]  23 | pub struct Engine {
[INFO] [stdout]     | ----------------- method `sync` not found for this struct
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout] note: `IOManager` defines an item `sync`, perhaps you need to implement it
[INFO] [stdout]    --> bitcask/src/fio/io_manager.rs:8:1
[INFO] [stdout]     |
[INFO] [stdout]   8 | pub trait IOManager: Sync + Send {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `sync` found for struct `DataFile` in the current scope
[INFO] [stdout]    --> bitcask/src/merge/mod.rs:109:19
[INFO] [stdout]     |
[INFO] [stdout] 109 |         hint_file.sync()?;
[INFO] [stdout]     |                   ^^^^ method not found in `DataFile`
[INFO] [stdout]     |
[INFO] [stdout]    ::: bitcask/src/data/data_files_mod/data_file.rs:10:1
[INFO] [stdout]     |
[INFO] [stdout]  10 | pub struct DataFile {
[INFO] [stdout]     | ------------------- method `sync` not found for this struct
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout] note: `IOManager` defines an item `sync`, perhaps you need to implement it
[INFO] [stdout]    --> bitcask/src/fio/io_manager.rs:8:1
[INFO] [stdout]     |
[INFO] [stdout]   8 | pub trait IOManager: Sync + Send {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `get_file_id` found for reference `&DataFile` in the current scope
[INFO] [stdout]    --> bitcask/src/merge/mod.rs:112:61
[INFO] [stdout]     |
[INFO] [stdout] 112 |         let non_merge_file_id = merge_files.last().unwrap().get_file_id() + 1;
[INFO] [stdout]     |                                                             ^^^^^^^^^^^ method not found in `&DataFile`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `write` found for struct `DataFile` in the current scope
[INFO] [stdout]    --> bitcask/src/merge/mod.rs:120:24
[INFO] [stdout]     |
[INFO] [stdout] 120 |         merge_fin_file.write(&enc_record)?;
[INFO] [stdout]     |                        ^^^^^ method not found in `DataFile`
[INFO] [stdout]     |
[INFO] [stdout]    ::: bitcask/src/data/data_files_mod/data_file.rs:10:1
[INFO] [stdout]     |
[INFO] [stdout]  10 | pub struct DataFile {
[INFO] [stdout]     | ------------------- method `write` not found for this struct
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following traits define an item `write`, perhaps you need to implement one of them:
[INFO] [stdout]             candidate #1: `IOManager`
[INFO] [stdout]             candidate #2: `std::hash::Hasher`
[INFO] [stdout]             candidate #3: `std::io::Write`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `sync` found for struct `DataFile` in the current scope
[INFO] [stdout]    --> bitcask/src/merge/mod.rs:121:24
[INFO] [stdout]     |
[INFO] [stdout] 121 |         merge_fin_file.sync()?;
[INFO] [stdout]     |                        ^^^^ method not found in `DataFile`
[INFO] [stdout]     |
[INFO] [stdout]    ::: bitcask/src/data/data_files_mod/data_file.rs:10:1
[INFO] [stdout]     |
[INFO] [stdout]  10 | pub struct DataFile {
[INFO] [stdout]     | ------------------- method `sync` not found for this struct
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout] note: `IOManager` defines an item `sync`, perhaps you need to implement it
[INFO] [stdout]    --> bitcask/src/fio/io_manager.rs:8:1
[INFO] [stdout]     |
[INFO] [stdout]   8 | pub trait IOManager: Sync + Send {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `read_log_record` found for reference `&DataFile` in the current scope
[INFO] [stdout]   --> bitcask/src/merge/mod.rs:80:62
[INFO] [stdout]    |
[INFO] [stdout] 80 |                 let (mut log_record, size) = match data_file.read_log_record(offset) {
[INFO] [stdout]    |                                                              ^^^^^^^^^^^^^^^ method not found in `&DataFile`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> bitcask/src/merge/mod.rs:92:57
[INFO] [stdout]    |
[INFO] [stdout] 92 |                 if let Some(index_pos) = self.index.get(real_key.clone()) {
[INFO] [stdout]    |                                                         ^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `get_write_off` found for struct `parking_lot::lock_api::RwLockReadGuard<'_, parking_lot::RawRwLock, DataFile>` in the current scope
[INFO] [stdout]    --> bitcask/src/merge/mod.rs:129:21
[INFO] [stdout]     |
[INFO] [stdout] 129 |         active_file.get_write_off() == 0 && older_files.len() == 0
[INFO] [stdout]     |                     ^^^^^^^^^^^^^ method not found in `parking_lot::lock_api::RwLockReadGuard<'_, parking_lot::RawRwLock, DataFile>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `get_file_id` found for reference `&DataFile` in the current scope
[INFO] [stdout]   --> bitcask/src/merge/mod.rs:94:55
[INFO] [stdout]    |
[INFO] [stdout] 94 |                     if index_pos.file_id == data_file.get_file_id() && index_pos.offset == offset {
[INFO] [stdout]    |                                                       ^^^^^^^^^^^ method not found in `&DataFile`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `sync` found for struct `parking_lot::lock_api::RwLockWriteGuard<'_, parking_lot::RawRwLock, DataFile>` in the current scope
[INFO] [stdout]    --> bitcask/src/merge/mod.rs:143:21
[INFO] [stdout]     |
[INFO] [stdout] 143 |         active_file.sync()?;
[INFO] [stdout]     |                     ^^^^ method not found in `parking_lot::lock_api::RwLockWriteGuard<'_, parking_lot::RawRwLock, DataFile>`
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout] note: `IOManager` defines an item `sync`, perhaps you need to implement it
[INFO] [stdout]    --> bitcask/src/fio/io_manager.rs:8:1
[INFO] [stdout]     |
[INFO] [stdout]   8 | pub trait IOManager: Sync + Send {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `append_log_record` found for struct `db::engine::Engine` in the current scope
[INFO] [stdout]   --> bitcask/src/merge/mod.rs:98:55
[INFO] [stdout]    |
[INFO] [stdout] 98 |                         let log_record_pos = merge_db.append_log_record(&mut log_record)?;
[INFO] [stdout]    |                                                       ^^^^^^^^^^^^^^^^^ method not found in `db::engine::Engine`
[INFO] [stdout]    |
[INFO] [stdout]   ::: bitcask/src/db/engine.rs:23:1
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub struct Engine {
[INFO] [stdout]    | ----------------- method `append_log_record` not found for this struct
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `get_file_id` found for struct `parking_lot::lock_api::RwLockWriteGuard<'_, parking_lot::RawRwLock, DataFile>` in the current scope
[INFO] [stdout]    --> bitcask/src/merge/mod.rs:144:42
[INFO] [stdout]     |
[INFO] [stdout] 144 |         let active_file_id = active_file.get_file_id();
[INFO] [stdout]     |                                          ^^^^^^^^^^^ method not found in `parking_lot::lock_api::RwLockWriteGuard<'_, parking_lot::RawRwLock, DataFile>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `write_hint_record` found for struct `DataFile` in the current scope
[INFO] [stdout]    --> bitcask/src/merge/mod.rs:100:35
[INFO] [stdout]     |
[INFO] [stdout] 100 |                         hint_file.write_hint_record(real_key.clone(), log_record_pos)?;
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^ method not found in `DataFile`
[INFO] [stdout]     |
[INFO] [stdout]    ::: bitcask/src/data/data_files_mod/data_file.rs:10:1
[INFO] [stdout]     |
[INFO] [stdout]  10 | pub struct DataFile {
[INFO] [stdout]     | ------------------- method `write_hint_record` not found for this struct
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `read_log_record` found for struct `DataFile` in the current scope
[INFO] [stdout]    --> bitcask/src/merge/mod.rs:186:54
[INFO] [stdout]     |
[INFO] [stdout] 186 |             let (log_record, size) = match hint_file.read_log_record(offset) {
[INFO] [stdout]     |                                                      ^^^^^^^^^^^^^^^ method not found in `DataFile`
[INFO] [stdout]     |
[INFO] [stdout]    ::: bitcask/src/data/data_files_mod/data_file.rs:10:1
[INFO] [stdout]     |
[INFO] [stdout]  10 | pub struct DataFile {
[INFO] [stdout]     | ------------------- method `read_log_record` not found for this struct
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `sync` found for struct `db::engine::Engine` in the current scope
[INFO] [stdout]    --> bitcask/src/merge/mod.rs:108:18
[INFO] [stdout]     |
[INFO] [stdout] 108 |         merge_db.sync()?;
[INFO] [stdout]     |                  ^^^^ method not found in `db::engine::Engine`
[INFO] [stdout]     |
[INFO] [stdout]    ::: bitcask/src/db/engine.rs:23:1
[INFO] [stdout]     |
[INFO] [stdout]  23 | pub struct Engine {
[INFO] [stdout]     | ----------------- method `sync` not found for this struct
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout] note: `io_manager::IOManager` defines an item `sync`, perhaps you need to implement it
[INFO] [stdout]    --> bitcask/src/fio/io_manager.rs:8:1
[INFO] [stdout]     |
[INFO] [stdout]   8 | pub trait IOManager: Sync + Send {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `read_log_record` found for struct `DataFile` in the current scope
[INFO] [stdout]    --> bitcask/src/merge/mod.rs:264:43
[INFO] [stdout]     |
[INFO] [stdout] 264 |     let merge_fin_record = merge_fin_file.read_log_record(0)?;
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^ method not found in `DataFile`
[INFO] [stdout]     |
[INFO] [stdout]    ::: bitcask/src/data/data_files_mod/data_file.rs:10:1
[INFO] [stdout]     |
[INFO] [stdout]  10 | pub struct DataFile {
[INFO] [stdout]     | ------------------- method `read_log_record` not found for this struct
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `sync` found for struct `DataFile` in the current scope
[INFO] [stdout]    --> bitcask/src/merge/mod.rs:109:19
[INFO] [stdout]     |
[INFO] [stdout] 109 |         hint_file.sync()?;
[INFO] [stdout]     |                   ^^^^ method not found in `DataFile`
[INFO] [stdout]     |
[INFO] [stdout]    ::: bitcask/src/data/data_files_mod/data_file.rs:10:1
[INFO] [stdout]     |
[INFO] [stdout]  10 | pub struct DataFile {
[INFO] [stdout]     | ------------------- method `sync` not found for this struct
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout] note: `io_manager::IOManager` defines an item `sync`, perhaps you need to implement it
[INFO] [stdout]    --> bitcask/src/fio/io_manager.rs:8:1
[INFO] [stdout]     |
[INFO] [stdout]   8 | pub trait IOManager: Sync + Send {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `get_file_id` found for reference `&DataFile` in the current scope
[INFO] [stdout]    --> bitcask/src/merge/mod.rs:112:61
[INFO] [stdout]     |
[INFO] [stdout] 112 |         let non_merge_file_id = merge_files.last().unwrap().get_file_id() + 1;
[INFO] [stdout]     |                                                             ^^^^^^^^^^^ method not found in `&DataFile`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `try_lock_exclusive` found for struct `File` in the current scope
[INFO] [stdout]   --> bitcask/src/db/engine.rs:66:35
[INFO] [stdout]    |
[INFO] [stdout] 66 |         if let Err(_) = lock_file.try_lock_exclusive() {
[INFO] [stdout]    |                                   ^^^^^^^^^^^^^^^^^^ method not found in `File`
[INFO] [stdout]    |
[INFO] [stdout]    = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: the following traits which provide `try_lock_exclusive` are implemented but not in scope; perhaps you want to import one of them
[INFO] [stdout]    |
[INFO] [stdout]  1 + use fs2::FileExt;
[INFO] [stdout]    |
[INFO] [stdout]  1 + use fs4::file_ext::sync_impl::FileExt;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `get_file_id` found for reference `&DataFile` in the current scope
[INFO] [stdout]   --> bitcask/src/db/engine.rs:84:29
[INFO] [stdout]    |
[INFO] [stdout] 84 |             file_ids.push(v.get_file_id());
[INFO] [stdout]    |                             ^^^^^^^^^^^ method not found in `&DataFile`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `write` found for struct `DataFile` in the current scope
[INFO] [stdout]    --> bitcask/src/merge/mod.rs:120:24
[INFO] [stdout]     |
[INFO] [stdout] 120 |         merge_fin_file.write(&enc_record)?;
[INFO] [stdout]     |                        ^^^^^ method not found in `DataFile`
[INFO] [stdout]     |
[INFO] [stdout]    ::: bitcask/src/data/data_files_mod/data_file.rs:10:1
[INFO] [stdout]     |
[INFO] [stdout]  10 | pub struct DataFile {
[INFO] [stdout]     | ------------------- method `write` not found for this struct
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following traits define an item `write`, perhaps you need to implement one of them:
[INFO] [stdout]             candidate #1: `io_manager::IOManager`
[INFO] [stdout]             candidate #2: `std::hash::Hasher`
[INFO] [stdout]             candidate #3: `std::io::Write`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `get_file_id` found for struct `DataFile` in the current scope
[INFO] [stdout]   --> bitcask/src/db/engine.rs:94:41
[INFO] [stdout]    |
[INFO] [stdout] 94 |                 older_files.insert(file.get_file_id(), file);
[INFO] [stdout]    |                                         ^^^^^^^^^^^ method not found in `DataFile`
[INFO] [stdout]    |
[INFO] [stdout]   ::: bitcask/src/data/data_files_mod/data_file.rs:10:1
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct DataFile {
[INFO] [stdout]    | ------------------- method `get_file_id` not found for this struct
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `new_indexer` in this scope
[INFO] [stdout]    --> bitcask/src/db/engine.rs:109:20
[INFO] [stdout]     |
[INFO] [stdout] 109 |             index: new_indexer(options.index_type, options.dir_path),
[INFO] [stdout]     |                    ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `sync` found for struct `DataFile` in the current scope
[INFO] [stdout]    --> bitcask/src/merge/mod.rs:121:24
[INFO] [stdout]     |
[INFO] [stdout] 121 |         merge_fin_file.sync()?;
[INFO] [stdout]     |                        ^^^^ method not found in `DataFile`
[INFO] [stdout]     |
[INFO] [stdout]    ::: bitcask/src/data/data_files_mod/data_file.rs:10:1
[INFO] [stdout]     |
[INFO] [stdout]  10 | pub struct DataFile {
[INFO] [stdout]     | ------------------- method `sync` not found for this struct
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout] note: `io_manager::IOManager` defines an item `sync`, perhaps you need to implement it
[INFO] [stdout]    --> bitcask/src/fio/io_manager.rs:8:1
[INFO] [stdout]     |
[INFO] [stdout]   8 | pub trait IOManager: Sync + Send {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `get_write_off` found for struct `parking_lot::lock_api::RwLockReadGuard<'_, parking_lot::RawRwLock, DataFile>` in the current scope
[INFO] [stdout]    --> bitcask/src/merge/mod.rs:129:21
[INFO] [stdout]     |
[INFO] [stdout] 129 |         active_file.get_write_off() == 0 && older_files.len() == 0
[INFO] [stdout]     |                     ^^^^^^^^^^^^^ method not found in `parking_lot::lock_api::RwLockReadGuard<'_, parking_lot::RawRwLock, DataFile>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `load_index_from_data_files` found for struct `Engine` in the current scope
[INFO] [stdout]    --> bitcask/src/db/engine.rs:127:41
[INFO] [stdout]     |
[INFO] [stdout]  23 | pub struct Engine {
[INFO] [stdout]     | ----------------- method `load_index_from_data_files` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 127 |             let current_seq_no = engine.load_index_from_data_files()?;
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `load_index_from_hint_file` with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 127 -             let current_seq_no = engine.load_index_from_data_files()?;
[INFO] [stdout] 127 +             let current_seq_no = engine.load_index_from_hint_file()?;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `sync` found for struct `parking_lot::lock_api::RwLockWriteGuard<'_, parking_lot::RawRwLock, DataFile>` in the current scope
[INFO] [stdout]    --> bitcask/src/merge/mod.rs:143:21
[INFO] [stdout]     |
[INFO] [stdout] 143 |         active_file.sync()?;
[INFO] [stdout]     |                     ^^^^ method not found in `parking_lot::lock_api::RwLockWriteGuard<'_, parking_lot::RawRwLock, DataFile>`
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout] note: `io_manager::IOManager` defines an item `sync`, perhaps you need to implement it
[INFO] [stdout]    --> bitcask/src/fio/io_manager.rs:8:1
[INFO] [stdout]     |
[INFO] [stdout]   8 | pub trait IOManager: Sync + Send {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `reset_io_type` found for struct `Engine` in the current scope
[INFO] [stdout]    --> bitcask/src/db/engine.rs:136:24
[INFO] [stdout]     |
[INFO] [stdout]  23 | pub struct Engine {
[INFO] [stdout]     | ----------------- method `reset_io_type` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 136 |                 engine.reset_io_type();
[INFO] [stdout]     |                        ^^^^^^^^^^^^^ method not found in `Engine`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `load_seq_no` found for struct `Engine` in the current scope
[INFO] [stdout]    --> bitcask/src/db/engine.rs:142:43
[INFO] [stdout]     |
[INFO] [stdout]  23 | pub struct Engine {
[INFO] [stdout]     | ----------------- method `load_seq_no` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 142 |             let (exists, seq_no) = engine.load_seq_no();
[INFO] [stdout]     |                                           ^^^^^^^^^^^ method not found in `Engine`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `get_file_id` found for struct `parking_lot::lock_api::RwLockWriteGuard<'_, parking_lot::RawRwLock, DataFile>` in the current scope
[INFO] [stdout]    --> bitcask/src/merge/mod.rs:144:42
[INFO] [stdout]     |
[INFO] [stdout] 144 |         let active_file_id = active_file.get_file_id();
[INFO] [stdout]     |                                          ^^^^^^^^^^^ method not found in `parking_lot::lock_api::RwLockWriteGuard<'_, parking_lot::RawRwLock, DataFile>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `set_write_off` found for struct `parking_lot::lock_api::RwLockWriteGuard<'_, parking_lot::RawRwLock, DataFile>` in the current scope
[INFO] [stdout]    --> bitcask/src/db/engine.rs:150:25
[INFO] [stdout]     |
[INFO] [stdout] 150 |             active_file.set_write_off(active_file.file_size());
[INFO] [stdout]     |                         ^^^^^^^^^^^^^ method not found in `parking_lot::lock_api::RwLockWriteGuard<'_, parking_lot::RawRwLock, DataFile>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `read_log_record` found for struct `DataFile` in the current scope
[INFO] [stdout]    --> bitcask/src/merge/mod.rs:186:54
[INFO] [stdout]     |
[INFO] [stdout] 186 |             let (log_record, size) = match hint_file.read_log_record(offset) {
[INFO] [stdout]     |                                                      ^^^^^^^^^^^^^^^ method not found in `DataFile`
[INFO] [stdout]     |
[INFO] [stdout]    ::: bitcask/src/data/data_files_mod/data_file.rs:10:1
[INFO] [stdout]     |
[INFO] [stdout]  10 | pub struct DataFile {
[INFO] [stdout]     | ------------------- method `read_log_record` not found for this struct
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `file_size` found for struct `parking_lot::lock_api::RwLockWriteGuard<'_, parking_lot::RawRwLock, DataFile>` in the current scope
[INFO] [stdout]    --> bitcask/src/db/engine.rs:150:51
[INFO] [stdout]     |
[INFO] [stdout] 150 |             active_file.set_write_off(active_file.file_size());
[INFO] [stdout]     |                                                   ^^^^^^^^^ method not found in `parking_lot::lock_api::RwLockWriteGuard<'_, parking_lot::RawRwLock, DataFile>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `read_log_record` found for struct `DataFile` in the current scope
[INFO] [stdout]    --> bitcask/src/merge/mod.rs:264:43
[INFO] [stdout]     |
[INFO] [stdout] 264 |     let merge_fin_record = merge_fin_file.read_log_record(0)?;
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^ method not found in `DataFile`
[INFO] [stdout]     |
[INFO] [stdout]    ::: bitcask/src/data/data_files_mod/data_file.rs:10:1
[INFO] [stdout]     |
[INFO] [stdout]  10 | pub struct DataFile {
[INFO] [stdout]     | ------------------- method `read_log_record` not found for this struct
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `append_log_record` found for reference `&Engine` in the current scope
[INFO] [stdout]   --> bitcask/src/batch/write_batch.rs:97:35
[INFO] [stdout]    |
[INFO] [stdout] 97 |             let pos = self.engine.append_log_record(&mut record)?;
[INFO] [stdout]    |                                   ^^^^^^^^^^^^^^^^^ method not found in `&Engine`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `put` found for struct `db::engine::Engine` in the current scope
[INFO] [stdout]    --> bitcask/src/merge/mod.rs:320:34
[INFO] [stdout]     |
[INFO] [stdout] 320 |             let put_res = engine.put(get_test_key(i), get_test_value(i));
[INFO] [stdout]     |                                  ^^^ method not found in `db::engine::Engine`
[INFO] [stdout]     |
[INFO] [stdout]    ::: bitcask/src/db/engine.rs:23:1
[INFO] [stdout]     |
[INFO] [stdout]  23 | pub struct Engine {
[INFO] [stdout]     | ----------------- method `put` not found for this struct
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following traits define an item `put`, perhaps you need to implement one of them:
[INFO] [stdout]             candidate #1: `indexer::Indexer`
[INFO] [stdout]             candidate #2: `BufMut`
[INFO] [stdout] help: one of the expressions' fields has a method of the same name
[INFO] [stdout]     |
[INFO] [stdout] 320 |             let put_res = engine.index.put(get_test_key(i), get_test_value(i));
[INFO] [stdout]     |                                  ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `list_keys` found for struct `db::engine::Engine` in the current scope
[INFO] [stdout]    --> bitcask/src/merge/mod.rs:331:28
[INFO] [stdout]     |
[INFO] [stdout] 331 |         let keys = engine2.list_keys().unwrap();
[INFO] [stdout]     |                            ^^^^^^^^^ method not found in `db::engine::Engine`
[INFO] [stdout]     |
[INFO] [stdout]    ::: bitcask/src/db/engine.rs:23:1
[INFO] [stdout]     |
[INFO] [stdout]  23 | pub struct Engine {
[INFO] [stdout]     | ----------------- method `list_keys` not found for this struct
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout] note: `indexer::Indexer` defines an item `list_keys`, perhaps you need to implement it
[INFO] [stdout]    --> bitcask/src/index/indexer.rs:8:1
[INFO] [stdout]     |
[INFO] [stdout]   8 | pub trait Indexer: Sync + Send {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: one of the expressions' fields has a method of the same name
[INFO] [stdout]     |
[INFO] [stdout] 331 |         let keys = engine2.index.list_keys().unwrap();
[INFO] [stdout]     |                            ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `append_log_record` found for reference `&Engine` in the current scope
[INFO] [stdout]    --> bitcask/src/batch/write_batch.rs:107:21
[INFO] [stdout]     |
[INFO] [stdout] 107 |         self.engine.append_log_record(&mut finish_record)?;
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^ method not found in `&Engine`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `sync` found for reference `&Engine` in the current scope
[INFO] [stdout]    --> bitcask/src/batch/write_batch.rs:111:25
[INFO] [stdout]     |
[INFO] [stdout] 111 |             self.engine.sync()?;
[INFO] [stdout]     |                         ^^^^ method not found in `&Engine`
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout] note: `IOManager` defines an item `sync`, perhaps you need to implement it
[INFO] [stdout]    --> bitcask/src/fio/io_manager.rs:8:1
[INFO] [stdout]     |
[INFO] [stdout]   8 | pub trait IOManager: Sync + Send {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `get` found for struct `db::engine::Engine` in the current scope
[INFO] [stdout]    --> bitcask/src/merge/mod.rs:335:35
[INFO] [stdout]     |
[INFO] [stdout] 335 |             let get_res = engine2.get(get_test_key(i));
[INFO] [stdout]     |                                   ^^^ method not found in `db::engine::Engine`
[INFO] [stdout]     |
[INFO] [stdout]    ::: bitcask/src/db/engine.rs:23:1
[INFO] [stdout]     |
[INFO] [stdout]  23 | pub struct Engine {
[INFO] [stdout]     | ----------------- method `get` not found for this struct
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following traits define an item `get`, perhaps you need to implement one of them:
[INFO] [stdout]             candidate #1: `indexer::Indexer`
[INFO] [stdout]             candidate #2: `SliceIndex`
[INFO] [stdout] help: one of the expressions' fields has a method of the same name
[INFO] [stdout]     |
[INFO] [stdout] 335 |             let get_res = engine2.index.get(get_test_key(i));
[INFO] [stdout]     |                                   ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `put` found for struct `db::engine::Engine` in the current scope
[INFO] [stdout]    --> bitcask/src/merge/mod.rs:353:34
[INFO] [stdout]     |
[INFO] [stdout] 353 |             let put_res = engine.put(get_test_key(i), get_test_value(i));
[INFO] [stdout]     |                                  ^^^ method not found in `db::engine::Engine`
[INFO] [stdout]     |
[INFO] [stdout]    ::: bitcask/src/db/engine.rs:23:1
[INFO] [stdout]     |
[INFO] [stdout]  23 | pub struct Engine {
[INFO] [stdout]     | ----------------- method `put` not found for this struct
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following traits define an item `put`, perhaps you need to implement one of them:
[INFO] [stdout]             candidate #1: `indexer::Indexer`
[INFO] [stdout]             candidate #2: `BufMut`
[INFO] [stdout] help: one of the expressions' fields has a method of the same name
[INFO] [stdout]     |
[INFO] [stdout] 353 |             let put_res = engine.index.put(get_test_key(i), get_test_value(i));
[INFO] [stdout]     |                                  ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> bitcask/src/batch/mod.rs:24:38
[INFO] [stdout]     |
[INFO] [stdout]  24 |             pending_writes: Arc::new(Mutex::new(HashMap::new())),
[INFO] [stdout]     |                             -------- ^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Mutex<RawMutex, HashMap<Vec<u8>, ...>>`, found `Mutex<HashMap<_, _>>`
[INFO] [stdout]     |                             |
[INFO] [stdout]     |                             arguments to this function are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: `std::sync::Mutex<HashMap<_, _>>` and `Mutex<RawMutex, HashMap<Vec<u8>, ...>>` have similar names, but are actually distinct types
[INFO] [stdout] note: `std::sync::Mutex<HashMap<_, _>>` is defined in crate `std`
[INFO] [stdout]    --> /rustc/ddcf048784667508cd676fef4667f88ae15628a3/library/std/src/sync/poison/mutex.rs:227:1
[INFO] [stdout] note: `Mutex<RawMutex, HashMap<Vec<u8>, ...>>` is defined in crate `lock_api`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lock_api-0.4.13/src/mutex.rs:138:1
[INFO] [stdout]     |
[INFO] [stdout] 138 | pub struct Mutex<R, T: ?Sized> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: associated function defined here
[INFO] [stdout]    --> /rustc/ddcf048784667508cd676fef4667f88ae15628a3/library/alloc/src/sync.rs:417:12
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BufMut`
[INFO] [stdout]  --> bitcask/src/batch/write_batch.rs:4:13
[INFO] [stdout]   |
[INFO] [stdout] 4 | use bytes::{BufMut, Bytes, BytesMut};
[INFO] [stdout]   |             ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `put` found for struct `db::engine::Engine` in the current scope
[INFO] [stdout]    --> bitcask/src/merge/mod.rs:357:34
[INFO] [stdout]     |
[INFO] [stdout] 357 |             let put_res = engine.put(get_test_key(i), Bytes::from("new value in merge"));
[INFO] [stdout]     |                                  ^^^ method not found in `db::engine::Engine`
[INFO] [stdout]     |
[INFO] [stdout]    ::: bitcask/src/db/engine.rs:23:1
[INFO] [stdout]     |
[INFO] [stdout]  23 | pub struct Engine {
[INFO] [stdout]     | ----------------- method `put` not found for this struct
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following traits define an item `put`, perhaps you need to implement one of them:
[INFO] [stdout]             candidate #1: `indexer::Indexer`
[INFO] [stdout]             candidate #2: `BufMut`
[INFO] [stdout] help: one of the expressions' fields has a method of the same name
[INFO] [stdout]     |
[INFO] [stdout] 357 |             let put_res = engine.index.put(get_test_key(i), Bytes::from("new value in merge"));
[INFO] [stdout]     |                                  ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `delete` found for struct `db::engine::Engine` in the current scope
[INFO] [stdout]    --> bitcask/src/merge/mod.rs:361:34
[INFO] [stdout]     |
[INFO] [stdout] 361 |             let del_res = engine.delete(get_test_key(i));
[INFO] [stdout]     |                                  ^^^^^^ method not found in `db::engine::Engine`
[INFO] [stdout]     |
[INFO] [stdout]    ::: bitcask/src/db/engine.rs:23:1
[INFO] [stdout]     |
[INFO] [stdout]  23 | pub struct Engine {
[INFO] [stdout]     | ----------------- method `delete` not found for this struct
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout] note: `indexer::Indexer` defines an item `delete`, perhaps you need to implement it
[INFO] [stdout]    --> bitcask/src/index/indexer.rs:8:1
[INFO] [stdout]     |
[INFO] [stdout]   8 | pub trait Indexer: Sync + Send {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: one of the expressions' fields has a method of the same name
[INFO] [stdout]     |
[INFO] [stdout] 361 |             let del_res = engine.index.delete(get_test_key(i));
[INFO] [stdout]     |                                  ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `list_keys` found for struct `db::engine::Engine` in the current scope
[INFO] [stdout]    --> bitcask/src/merge/mod.rs:372:28
[INFO] [stdout]     |
[INFO] [stdout] 372 |         let keys = engine2.list_keys().unwrap();
[INFO] [stdout]     |                            ^^^^^^^^^ method not found in `db::engine::Engine`
[INFO] [stdout]     |
[INFO] [stdout]    ::: bitcask/src/db/engine.rs:23:1
[INFO] [stdout]     |
[INFO] [stdout]  23 | pub struct Engine {
[INFO] [stdout]     | ----------------- method `list_keys` not found for this struct
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout] note: `indexer::Indexer` defines an item `list_keys`, perhaps you need to implement it
[INFO] [stdout]    --> bitcask/src/index/indexer.rs:8:1
[INFO] [stdout]     |
[INFO] [stdout]   8 | pub trait Indexer: Sync + Send {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: one of the expressions' fields has a method of the same name
[INFO] [stdout]     |
[INFO] [stdout] 372 |         let keys = engine2.index.list_keys().unwrap();
[INFO] [stdout]     |                            ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `get` found for struct `db::engine::Engine` in the current scope
[INFO] [stdout]    --> bitcask/src/merge/mod.rs:376:35
[INFO] [stdout]     |
[INFO] [stdout] 376 |             let get_res = engine2.get(get_test_key(i));
[INFO] [stdout]     |                                   ^^^ method not found in `db::engine::Engine`
[INFO] [stdout]     |
[INFO] [stdout]    ::: bitcask/src/db/engine.rs:23:1
[INFO] [stdout]     |
[INFO] [stdout]  23 | pub struct Engine {
[INFO] [stdout]     | ----------------- method `get` not found for this struct
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following traits define an item `get`, perhaps you need to implement one of them:
[INFO] [stdout]             candidate #1: `indexer::Indexer`
[INFO] [stdout]             candidate #2: `SliceIndex`
[INFO] [stdout] help: one of the expressions' fields has a method of the same name
[INFO] [stdout]     |
[INFO] [stdout] 376 |             let get_res = engine2.index.get(get_test_key(i));
[INFO] [stdout]     |                                   ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `put` found for struct `db::engine::Engine` in the current scope
[INFO] [stdout]    --> bitcask/src/merge/mod.rs:394:34
[INFO] [stdout]     |
[INFO] [stdout] 394 |             let put_res = engine.put(get_test_key(i), get_test_value(i));
[INFO] [stdout]     |                                  ^^^ method not found in `db::engine::Engine`
[INFO] [stdout]     |
[INFO] [stdout]    ::: bitcask/src/db/engine.rs:23:1
[INFO] [stdout]     |
[INFO] [stdout]  23 | pub struct Engine {
[INFO] [stdout]     | ----------------- method `put` not found for this struct
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following traits define an item `put`, perhaps you need to implement one of them:
[INFO] [stdout]             candidate #1: `indexer::Indexer`
[INFO] [stdout]             candidate #2: `BufMut`
[INFO] [stdout] help: one of the expressions' fields has a method of the same name
[INFO] [stdout]     |
[INFO] [stdout] 394 |             let put_res = engine.index.put(get_test_key(i), get_test_value(i));
[INFO] [stdout]     |                                  ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `delete` found for struct `db::engine::Engine` in the current scope
[INFO] [stdout]    --> bitcask/src/merge/mod.rs:396:34
[INFO] [stdout]     |
[INFO] [stdout] 396 |             let del_res = engine.delete(get_test_key(i));
[INFO] [stdout]     |                                  ^^^^^^ method not found in `db::engine::Engine`
[INFO] [stdout]     |
[INFO] [stdout]    ::: bitcask/src/db/engine.rs:23:1
[INFO] [stdout]     |
[INFO] [stdout]  23 | pub struct Engine {
[INFO] [stdout]     | ----------------- method `delete` not found for this struct
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout] note: `indexer::Indexer` defines an item `delete`, perhaps you need to implement it
[INFO] [stdout]    --> bitcask/src/index/indexer.rs:8:1
[INFO] [stdout]     |
[INFO] [stdout]   8 | pub trait Indexer: Sync + Send {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: one of the expressions' fields has a method of the same name
[INFO] [stdout]     |
[INFO] [stdout] 396 |             let del_res = engine.index.delete(get_test_key(i));
[INFO] [stdout]     |                                  ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `list_keys` found for struct `db::engine::Engine` in the current scope
[INFO] [stdout]    --> bitcask/src/merge/mod.rs:407:28
[INFO] [stdout]     |
[INFO] [stdout] 407 |         let keys = engine2.list_keys().unwrap();
[INFO] [stdout]     |                            ^^^^^^^^^ method not found in `db::engine::Engine`
[INFO] [stdout]     |
[INFO] [stdout]    ::: bitcask/src/db/engine.rs:23:1
[INFO] [stdout]     |
[INFO] [stdout]  23 | pub struct Engine {
[INFO] [stdout]     | ----------------- method `list_keys` not found for this struct
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout] note: `indexer::Indexer` defines an item `list_keys`, perhaps you need to implement it
[INFO] [stdout]    --> bitcask/src/index/indexer.rs:8:1
[INFO] [stdout]     |
[INFO] [stdout]   8 | pub trait Indexer: Sync + Send {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: one of the expressions' fields has a method of the same name
[INFO] [stdout]     |
[INFO] [stdout] 407 |         let keys = engine2.index.list_keys().unwrap();
[INFO] [stdout]     |                            ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `get` found for struct `db::engine::Engine` in the current scope
[INFO] [stdout]    --> bitcask/src/merge/mod.rs:411:35
[INFO] [stdout]     |
[INFO] [stdout] 411 |             let get_res = engine2.get(get_test_key(i));
[INFO] [stdout]     |                                   ^^^ method not found in `db::engine::Engine`
[INFO] [stdout]     |
[INFO] [stdout]    ::: bitcask/src/db/engine.rs:23:1
[INFO] [stdout]     |
[INFO] [stdout]  23 | pub struct Engine {
[INFO] [stdout]     | ----------------- method `get` not found for this struct
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following traits define an item `get`, perhaps you need to implement one of them:
[INFO] [stdout]             candidate #1: `indexer::Indexer`
[INFO] [stdout]             candidate #2: `SliceIndex`
[INFO] [stdout] help: one of the expressions' fields has a method of the same name
[INFO] [stdout]     |
[INFO] [stdout] 411 |             let get_res = engine2.index.get(get_test_key(i));
[INFO] [stdout]     |                                   ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `put` found for struct `db::engine::Engine` in the current scope
[INFO] [stdout]    --> bitcask/src/merge/mod.rs:429:34
[INFO] [stdout]     |
[INFO] [stdout] 429 |             let put_res = engine.put(get_test_key(i), get_test_value(i));
[INFO] [stdout]     |                                  ^^^ method not found in `db::engine::Engine`
[INFO] [stdout]     |
[INFO] [stdout]    ::: bitcask/src/db/engine.rs:23:1
[INFO] [stdout]     |
[INFO] [stdout]  23 | pub struct Engine {
[INFO] [stdout]     | ----------------- method `put` not found for this struct
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following traits define an item `put`, perhaps you need to implement one of them:
[INFO] [stdout]             candidate #1: `indexer::Indexer`
[INFO] [stdout]             candidate #2: `BufMut`
[INFO] [stdout] help: one of the expressions' fields has a method of the same name
[INFO] [stdout]     |
[INFO] [stdout] 429 |             let put_res = engine.index.put(get_test_key(i), get_test_value(i));
[INFO] [stdout]     |                                  ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0282, E0308, E0425, E0432, E0433, E0599, E0603.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0282`.
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `put` found for struct `db::engine::Engine` in the current scope
[INFO] [stdout]    --> bitcask/src/merge/mod.rs:433:34
[INFO] [stdout]     |
[INFO] [stdout] 433 |             let put_res = engine.put(get_test_key(i), Bytes::from("new value in merge"));
[INFO] [stdout]     |                                  ^^^ method not found in `db::engine::Engine`
[INFO] [stdout]     |
[INFO] [stdout]    ::: bitcask/src/db/engine.rs:23:1
[INFO] [stdout]     |
[INFO] [stdout]  23 | pub struct Engine {
[INFO] [stdout]     | ----------------- method `put` not found for this struct
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following traits define an item `put`, perhaps you need to implement one of them:
[INFO] [stdout]             candidate #1: `indexer::Indexer`
[INFO] [stdout]             candidate #2: `BufMut`
[INFO] [stdout] help: one of the expressions' fields has a method of the same name
[INFO] [stdout]     |
[INFO] [stdout] 433 |             let put_res = engine.index.put(get_test_key(i), Bytes::from("new value in merge"));
[INFO] [stdout]     |                                  ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `delete` found for struct `db::engine::Engine` in the current scope
[INFO] [stdout]    --> bitcask/src/merge/mod.rs:437:34
[INFO] [stdout]     |
[INFO] [stdout] 437 |             let del_res = engine.delete(get_test_key(i));
[INFO] [stdout]     |                                  ^^^^^^ method not found in `db::engine::Engine`
[INFO] [stdout]     |
[INFO] [stdout]    ::: bitcask/src/db/engine.rs:23:1
[INFO] [stdout]     |
[INFO] [stdout]  23 | pub struct Engine {
[INFO] [stdout]     | ----------------- method `delete` not found for this struct
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout] note: `indexer::Indexer` defines an item `delete`, perhaps you need to implement it
[INFO] [stdout]    --> bitcask/src/index/indexer.rs:8:1
[INFO] [stdout]     |
[INFO] [stdout]   8 | pub trait Indexer: Sync + Send {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: one of the expressions' fields has a method of the same name
[INFO] [stdout]     |
[INFO] [stdout] 437 |             let del_res = engine.index.delete(get_test_key(i));
[INFO] [stdout]     |                                  ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `put` found for struct `Arc<db::engine::Engine>` in the current scope
[INFO] [stdout]    --> bitcask/src/merge/mod.rs:447:36
[INFO] [stdout]     |
[INFO] [stdout] 447 |                 let put_res = eng1.put(get_test_key(i), get_test_value(i));
[INFO] [stdout]     |                                    ^^^ method not found in `Arc<db::engine::Engine>`
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]     = note: the following traits define an item `put`, perhaps you need to implement one of them:
[INFO] [stdout]             candidate #1: `indexer::Indexer`
[INFO] [stdout]             candidate #2: `BufMut`
[INFO] [stdout] help: one of the expressions' fields has a method of the same name
[INFO] [stdout]     |
[INFO] [stdout] 447 |                 let put_res = eng1.index.put(get_test_key(i), get_test_value(i));
[INFO] [stdout]     |                                    ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `list_keys` found for struct `db::engine::Engine` in the current scope
[INFO] [stdout]    --> bitcask/src/merge/mod.rs:467:28
[INFO] [stdout]     |
[INFO] [stdout] 467 |         let keys = engine2.list_keys().unwrap();
[INFO] [stdout]     |                            ^^^^^^^^^ method not found in `db::engine::Engine`
[INFO] [stdout]     |
[INFO] [stdout]    ::: bitcask/src/db/engine.rs:23:1
[INFO] [stdout]     |
[INFO] [stdout]  23 | pub struct Engine {
[INFO] [stdout]     | ----------------- method `list_keys` not found for this struct
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout] note: `indexer::Indexer` defines an item `list_keys`, perhaps you need to implement it
[INFO] [stdout]    --> bitcask/src/index/indexer.rs:8:1
[INFO] [stdout]     |
[INFO] [stdout]   8 | pub trait Indexer: Sync + Send {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: one of the expressions' fields has a method of the same name
[INFO] [stdout]     |
[INFO] [stdout] 467 |         let keys = engine2.index.list_keys().unwrap();
[INFO] [stdout]     |                            ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `try_lock_exclusive` found for struct `File` in the current scope
[INFO] [stdout]   --> bitcask/src/db/engine.rs:66:35
[INFO] [stdout]    |
[INFO] [stdout] 66 |         if let Err(_) = lock_file.try_lock_exclusive() {
[INFO] [stdout]    |                                   ^^^^^^^^^^^^^^^^^^ method not found in `File`
[INFO] [stdout]    |
[INFO] [stdout]    = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: the following traits which provide `try_lock_exclusive` are implemented but not in scope; perhaps you want to import one of them
[INFO] [stdout]    |
[INFO] [stdout]  1 + use fs2::FileExt;
[INFO] [stdout]    |
[INFO] [stdout]  1 + use fs4::file_ext::sync_impl::FileExt;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `bitcask` (lib) due to 36 previous errors; 5 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error[E0599]: no method named `get_file_id` found for reference `&DataFile` in the current scope
[INFO] [stdout]   --> bitcask/src/db/engine.rs:84:29
[INFO] [stdout]    |
[INFO] [stdout] 84 |             file_ids.push(v.get_file_id());
[INFO] [stdout]    |                             ^^^^^^^^^^^ method not found in `&DataFile`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `get_file_id` found for struct `DataFile` in the current scope
[INFO] [stdout]   --> bitcask/src/db/engine.rs:94:41
[INFO] [stdout]    |
[INFO] [stdout] 94 |                 older_files.insert(file.get_file_id(), file);
[INFO] [stdout]    |                                         ^^^^^^^^^^^ method not found in `DataFile`
[INFO] [stdout]    |
[INFO] [stdout]   ::: bitcask/src/data/data_files_mod/data_file.rs:10:1
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct DataFile {
[INFO] [stdout]    | ------------------- method `get_file_id` not found for this struct
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `new_indexer` in this scope
[INFO] [stdout]    --> bitcask/src/db/engine.rs:109:20
[INFO] [stdout]     |
[INFO] [stdout] 109 |             index: new_indexer(options.index_type, options.dir_path),
[INFO] [stdout]     |                    ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `load_index_from_data_files` found for struct `db::engine::Engine` in the current scope
[INFO] [stdout]    --> bitcask/src/db/engine.rs:127:41
[INFO] [stdout]     |
[INFO] [stdout]  23 | pub struct Engine {
[INFO] [stdout]     | ----------------- method `load_index_from_data_files` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 127 |             let current_seq_no = engine.load_index_from_data_files()?;
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `load_index_from_hint_file` with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 127 -             let current_seq_no = engine.load_index_from_data_files()?;
[INFO] [stdout] 127 +             let current_seq_no = engine.load_index_from_hint_file()?;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `reset_io_type` found for struct `db::engine::Engine` in the current scope
[INFO] [stdout]    --> bitcask/src/db/engine.rs:136:24
[INFO] [stdout]     |
[INFO] [stdout]  23 | pub struct Engine {
[INFO] [stdout]     | ----------------- method `reset_io_type` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 136 |                 engine.reset_io_type();
[INFO] [stdout]     |                        ^^^^^^^^^^^^^ method not found in `db::engine::Engine`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `load_seq_no` found for struct `db::engine::Engine` in the current scope
[INFO] [stdout]    --> bitcask/src/db/engine.rs:142:43
[INFO] [stdout]     |
[INFO] [stdout]  23 | pub struct Engine {
[INFO] [stdout]     | ----------------- method `load_seq_no` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 142 |             let (exists, seq_no) = engine.load_seq_no();
[INFO] [stdout]     |                                           ^^^^^^^^^^^ method not found in `db::engine::Engine`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `set_write_off` found for struct `parking_lot::lock_api::RwLockWriteGuard<'_, parking_lot::RawRwLock, DataFile>` in the current scope
[INFO] [stdout]    --> bitcask/src/db/engine.rs:150:25
[INFO] [stdout]     |
[INFO] [stdout] 150 |             active_file.set_write_off(active_file.file_size());
[INFO] [stdout]     |                         ^^^^^^^^^^^^^ method not found in `parking_lot::lock_api::RwLockWriteGuard<'_, parking_lot::RawRwLock, DataFile>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `file_size` found for struct `parking_lot::lock_api::RwLockWriteGuard<'_, parking_lot::RawRwLock, DataFile>` in the current scope
[INFO] [stdout]    --> bitcask/src/db/engine.rs:150:51
[INFO] [stdout]     |
[INFO] [stdout] 150 |             active_file.set_write_off(active_file.file_size());
[INFO] [stdout]     |                                                   ^^^^^^^^^ method not found in `parking_lot::lock_api::RwLockWriteGuard<'_, parking_lot::RawRwLock, DataFile>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `append_log_record` found for reference `&db::engine::Engine` in the current scope
[INFO] [stdout]   --> bitcask/src/batch/write_batch.rs:97:35
[INFO] [stdout]    |
[INFO] [stdout] 97 |             let pos = self.engine.append_log_record(&mut record)?;
[INFO] [stdout]    |                                   ^^^^^^^^^^^^^^^^^ method not found in `&db::engine::Engine`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `append_log_record` found for reference `&db::engine::Engine` in the current scope
[INFO] [stdout]    --> bitcask/src/batch/write_batch.rs:107:21
[INFO] [stdout]     |
[INFO] [stdout] 107 |         self.engine.append_log_record(&mut finish_record)?;
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^ method not found in `&db::engine::Engine`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `sync` found for reference `&db::engine::Engine` in the current scope
[INFO] [stdout]    --> bitcask/src/batch/write_batch.rs:111:25
[INFO] [stdout]     |
[INFO] [stdout] 111 |             self.engine.sync()?;
[INFO] [stdout]     |                         ^^^^ method not found in `&db::engine::Engine`
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout] note: `io_manager::IOManager` defines an item `sync`, perhaps you need to implement it
[INFO] [stdout]    --> bitcask/src/fio/io_manager.rs:8:1
[INFO] [stdout]     |
[INFO] [stdout]   8 | pub trait IOManager: Sync + Send {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> bitcask/src/batch/mod.rs:24:38
[INFO] [stdout]     |
[INFO] [stdout]  24 |             pending_writes: Arc::new(Mutex::new(HashMap::new())),
[INFO] [stdout]     |                             -------- ^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Mutex<RawMutex, HashMap<Vec<u8>, ...>>`, found `Mutex<HashMap<_, _>>`
[INFO] [stdout]     |                             |
[INFO] [stdout]     |                             arguments to this function are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: `std::sync::Mutex<HashMap<_, _>>` and `Mutex<RawMutex, HashMap<Vec<u8>, ...>>` have similar names, but are actually distinct types
[INFO] [stdout] note: `std::sync::Mutex<HashMap<_, _>>` is defined in crate `std`
[INFO] [stdout]    --> /rustc/ddcf048784667508cd676fef4667f88ae15628a3/library/std/src/sync/poison/mutex.rs:227:1
[INFO] [stdout] note: `Mutex<RawMutex, HashMap<Vec<u8>, ...>>` is defined in crate `lock_api`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lock_api-0.4.13/src/mutex.rs:138:1
[INFO] [stdout]     |
[INFO] [stdout] 138 | pub struct Mutex<R, T: ?Sized> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: associated function defined here
[INFO] [stdout]    --> /rustc/ddcf048784667508cd676fef4667f88ae15628a3/library/alloc/src/sync.rs:417:12
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BufMut`
[INFO] [stdout]  --> bitcask/src/batch/write_batch.rs:4:13
[INFO] [stdout]   |
[INFO] [stdout] 4 | use bytes::{BufMut, Bytes, BytesMut};
[INFO] [stdout]   |             ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0282, E0308, E0425, E0432, E0433, E0599, E0603.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0282`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `bitcask` (lib test) due to 54 previous errors; 5 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "5bb3662a222db5299b55d4e5c8499d78eecf9693a444c771b6331d965810e976", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5bb3662a222db5299b55d4e5c8499d78eecf9693a444c771b6331d965810e976", kill_on_drop: false }`
[INFO] [stdout] 5bb3662a222db5299b55d4e5c8499d78eecf9693a444c771b6331d965810e976
