[INFO] cloning repository https://github.com/radogost/erdb
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/radogost/erdb" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fradogost%2Ferdb", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fradogost%2Ferdb'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] e4bfeb7fe84d1b8771c46f3a205c2a66b2585538
[INFO] testing radogost/erdb against 1.100.0-beta.1+cargoflags=--release for beta-release-1.100-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fradogost%2Ferdb" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/radogost/erdb
[INFO] finished tweaking git repo https://github.com/radogost/erdb
[INFO] tweaked toml for git repo https://github.com/radogost/erdb written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/radogost/erdb on toolchain 1.100.0-beta.1
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/radogost/erdb 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" "+1.100.0-beta.1" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 726b6decfd22b2cb55fdf48d9d55e834d0297e7f1d98b5dd8ba0b8f6602e14a8
[INFO] running `Command { std: "docker" "start" "726b6decfd22b2cb55fdf48d9d55e834d0297e7f1d98b5dd8ba0b8f6602e14a8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "726b6decfd22b2cb55fdf48d9d55e834d0297e7f1d98b5dd8ba0b8f6602e14a8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "726b6decfd22b2cb55fdf48d9d55e834d0297e7f1d98b5dd8ba0b8f6602e14a8" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "726b6decfd22b2cb55fdf48d9d55e834d0297e7f1d98b5dd8ba0b8f6602e14a8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "726b6decfd22b2cb55fdf48d9d55e834d0297e7f1d98b5dd8ba0b8f6602e14a8" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "build" "--frozen" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.50
[INFO] [stderr]    Compiling libc v0.2.139
[INFO] [stderr]    Compiling unicode-ident v1.0.6
[INFO] [stderr]    Compiling quote v1.0.23
[INFO] [stderr]    Compiling syn v1.0.107
[INFO] [stderr]    Compiling io-lifetimes v1.0.4
[INFO] [stderr]    Compiling rustix v0.36.7
[INFO] [stderr]    Compiling linux-raw-sys v0.1.4
[INFO] [stderr]    Compiling parking_lot_core v0.9.6
[INFO] [stderr]    Compiling anyhow v1.0.68
[INFO] [stderr]    Compiling once_cell v1.17.0
[INFO] [stderr]    Compiling os_str_bytes v6.4.1
[INFO] [stderr]    Compiling termcolor v1.2.0
[INFO] [stderr]    Compiling hashbrown v0.12.3
[INFO] [stderr]    Compiling clap_lex v0.3.1
[INFO] [stderr]    Compiling proc-macro-error-attr v1.0.4
[INFO] [stderr]    Compiling dashmap v5.4.0
[INFO] [stderr]    Compiling is-terminal v0.4.2
[INFO] [stderr]    Compiling proc-macro-error v1.0.4
[INFO] [stderr]    Compiling clap_derive v4.1.0
[INFO] [stderr]    Compiling clap v4.1.4
[INFO] [stderr]    Compiling erdb v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::<u16>::fetch_update`: renamed to `try_update` for consistency
[INFO] [stdout]    --> src/catalog/mod.rs:214:14
[INFO] [stdout]     |
[INFO] [stdout] 214 |             .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |prev| {
[INFO] [stdout]     |              ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 214 -             .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |prev| {
[INFO] [stdout] 214 +             .try_update(Ordering::Relaxed, Ordering::Relaxed, |prev| {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::<u32>::fetch_update`: renamed to `try_update` for consistency
[INFO] [stdout]    --> src/concurrency/mod.rs:276:14
[INFO] [stdout]     |
[INFO] [stdout] 276 |             .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |val| {
[INFO] [stdout]     |              ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 276 -             .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |val| {
[INFO] [stdout] 276 +             .try_update(Ordering::Relaxed, Ordering::Relaxed, |val| {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/buffer/buffer_manager.rs:29:17
[INFO] [stdout]    |
[INFO] [stdout] 29 |     pub fn read(&self) -> RwLockReadGuard<[u8]> {
[INFO] [stdout]    |                 ^^^^^     ^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 29 |     pub fn read(&self) -> RwLockReadGuard<'_, [u8]> {
[INFO] [stdout]    |                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/buffer/buffer_manager.rs:33:18
[INFO] [stdout]    |
[INFO] [stdout] 33 |     pub fn write(&self) -> RwLockWriteGuard<[u8]> {
[INFO] [stdout]    |                  ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                  |
[INFO] [stdout]    |                  the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 33 |     pub fn write(&self) -> RwLockWriteGuard<'_, [u8]> {
[INFO] [stdout]    |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/buffer/buffer_manager.rs:117:9
[INFO] [stdout]     |
[INFO] [stdout] 117 |         &self,
[INFO] [stdout]     |         ^^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 120 |     ) -> Result<Option<BufferGuard>> {
[INFO] [stdout]     |                        ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 120 |     ) -> Result<Option<BufferGuard<'_>>> {
[INFO] [stdout]     |                                   ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/buffer/buffer_manager.rs:147:18
[INFO] [stdout]     |
[INFO] [stdout] 147 |     pub fn fetch(&self, page_id: PageId) -> Result<Option<BufferGuard>> {
[INFO] [stdout]     |                  ^^^^^ the lifetime is elided here        ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 147 |     pub fn fetch(&self, page_id: PageId) -> Result<Option<BufferGuard<'_>>> {
[INFO] [stdout]     |                                                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/concurrency/mod.rs:242:9
[INFO] [stdout]     |
[INFO] [stdout] 242 |         &self,
[INFO] [stdout]     |         ^^^^^ the lifetime is elided here
[INFO] [stdout] 243 |         isolation_level: Option<IsolationLevel>,
[INFO] [stdout] 244 |     ) -> Result<Transaction> {
[INFO] [stdout]     |                 ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 244 |     ) -> Result<Transaction<'_>> {
[INFO] [stdout]     |                            ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/concurrency/mod.rs:248:39
[INFO] [stdout]     |
[INFO] [stdout] 248 |     pub fn start_implicit_transaction(&self) -> Result<Transaction> {
[INFO] [stdout]     |                                       ^^^^^            ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                       |
[INFO] [stdout]     |                                       the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 248 |     pub fn start_implicit_transaction(&self) -> Result<Transaction<'_>> {
[INFO] [stdout]     |                                                                   ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/concurrency/mod.rs:270:9
[INFO] [stdout]     |
[INFO] [stdout] 270 |         &self,
[INFO] [stdout]     |         ^^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 273 |     ) -> Result<Transaction> {
[INFO] [stdout]     |                 ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 273 |     ) -> Result<Transaction<'_>> {
[INFO] [stdout]     |                            ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/concurrency/mod.rs:308:22
[INFO] [stdout]     |
[INFO] [stdout] 308 |     pub fn bootstrap(&self) -> Transaction {
[INFO] [stdout]     |                      ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                      |
[INFO] [stdout]     |                      the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 308 |     pub fn bootstrap(&self) -> Transaction<'_> {
[INFO] [stdout]     |                                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/concurrency/mod.rs:358:17
[INFO] [stdout]     |
[INFO] [stdout] 358 |     fn get_page(&self, tid: TransactionId) -> Result<Option<BufferGuard>> {
[INFO] [stdout]     |                 ^^^^^ the lifetime is elided here           ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 358 |     fn get_page(&self, tid: TransactionId) -> Result<Option<BufferGuard<'_>>> {
[INFO] [stdout]     |                                                                        ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/concurrency/lock_manager.rs:127:23
[INFO] [stdout]     |
[INFO] [stdout] 127 |     pub fn lock_tuple(&self, to_lock: (TableId, TupleId), mode: LockMode) -> LockGuard {
[INFO] [stdout]     |                       ^^^^^ the lifetime is elided here                      ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 127 |     pub fn lock_tuple(&self, to_lock: (TableId, TupleId), mode: LockMode) -> LockGuard<'_> {
[INFO] [stdout]     |                                                                                       ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/concurrency/lock_manager.rs:132:29
[INFO] [stdout]     |
[INFO] [stdout] 132 |     pub fn lock_transaction(&self, to_lock: TransactionId, mode: LockMode) -> LockGuard {
[INFO] [stdout]     |                             ^^^^^ the lifetime is elided here                 ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 132 |     pub fn lock_transaction(&self, to_lock: TransactionId, mode: LockMode) -> LockGuard<'_> {
[INFO] [stdout]     |                                                                                        ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/concurrency/lock_manager.rs:136:13
[INFO] [stdout]     |
[INFO] [stdout] 136 |     fn lock(&self, tag: LockTag, mode: LockMode) -> LockGuard {
[INFO] [stdout]     |             ^^^^^ the lifetime is elided here       ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 136 |     fn lock(&self, tag: LockTag, mode: LockMode) -> LockGuard<'_> {
[INFO] [stdout]     |                                                              ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/executors/mod.rs:213:50
[INFO] [stdout]     |
[INFO] [stdout] 213 |     fn get_table(&'a self, table_id: TableId) -> &Table {
[INFO] [stdout]     |                   -- the lifetime is named here  ^^^^^^ the same lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]     |
[INFO] [stdout] 213 |     fn get_table(&'a self, table_id: TableId) -> &'a Table {
[INFO] [stdout]     |                                                   ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/storage/file_manager.rs:68:17
[INFO] [stdout]    |
[INFO] [stdout] 68 |     fn get_file(&self, table_id: TableId) -> Result<Ref<TableId, FileHandle>> {
[INFO] [stdout]    |                 ^^^^^ the lifetime is elided here   ^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 68 |     fn get_file(&self, table_id: TableId) -> Result<Ref<'_, TableId, FileHandle>> {
[INFO] [stdout]    |                                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/storage/heap/table.rs:189:19
[INFO] [stdout]     |
[INFO] [stdout] 189 |     fn fetch_page(&self, page_no: PageNo) -> Result<BufferGuard> {
[INFO] [stdout]     |                   ^^^^^ the lifetime is elided here ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 189 |     fn fetch_page(&self, page_no: PageNo) -> Result<BufferGuard<'_>> {
[INFO] [stdout]     |                                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/storage/heap/table.rs:200:26
[INFO] [stdout]     |
[INFO] [stdout] 200 |     fn allocate_new_page(&self) -> Result<BufferGuard> {
[INFO] [stdout]     |                          ^^^^^            ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                          |
[INFO] [stdout]     |                          the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 200 |     fn allocate_new_page(&self) -> Result<BufferGuard<'_>> {
[INFO] [stdout]     |                                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 24.13s
[INFO] running `Command { std: "docker" "inspect" "726b6decfd22b2cb55fdf48d9d55e834d0297e7f1d98b5dd8ba0b8f6602e14a8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "726b6decfd22b2cb55fdf48d9d55e834d0297e7f1d98b5dd8ba0b8f6602e14a8" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen" "--no-run" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling getrandom v0.2.8
[INFO] [stderr]    Compiling fastrand v1.8.0
[INFO] [stderr]    Compiling remove_dir_all v0.5.3
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling tempfile v3.3.0
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling erdb v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary parentheses around closure body
[INFO] [stdout]    --> src/executors/nested_loop_join_executor.rs:197:36
[INFO] [stdout]     |
[INFO] [stdout] 197 |         result.sort_by_key(|tuple| (tuple.values()[0].as_i32()));
[INFO] [stdout]     |                                    ^                          ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 197 -         result.sort_by_key(|tuple| (tuple.values()[0].as_i32()));
[INFO] [stdout] 197 +         result.sort_by_key(|tuple| tuple.values()[0].as_i32());
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around closure body
[INFO] [stdout]    --> src/executors/nested_loop_join_executor.rs:215:36
[INFO] [stdout]     |
[INFO] [stdout] 215 |         result.sort_by_key(|tuple| (tuple.values()[0].as_i32()));
[INFO] [stdout]     |                                    ^                          ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 215 -         result.sort_by_key(|tuple| (tuple.values()[0].as_i32()));
[INFO] [stdout] 215 +         result.sort_by_key(|tuple| tuple.values()[0].as_i32());
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around closure body
[INFO] [stdout]    --> src/executors/nested_loop_join_executor.rs:233:36
[INFO] [stdout]     |
[INFO] [stdout] 233 |         result.sort_by_key(|tuple| (tuple.values()[0].as_i32()));
[INFO] [stdout]     |                                    ^                          ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 233 -         result.sort_by_key(|tuple| (tuple.values()[0].as_i32()));
[INFO] [stdout] 233 +         result.sort_by_key(|tuple| tuple.values()[0].as_i32());
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around closure body
[INFO] [stdout]    --> src/executors/nested_loop_join_executor.rs:252:36
[INFO] [stdout]     |
[INFO] [stdout] 252 |         result.sort_by_key(|tuple| (tuple.values()[1].as_i32()));
[INFO] [stdout]     |                                    ^                          ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 252 -         result.sort_by_key(|tuple| (tuple.values()[1].as_i32()));
[INFO] [stdout] 252 +         result.sort_by_key(|tuple| tuple.values()[1].as_i32());
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::<u16>::fetch_update`: renamed to `try_update` for consistency
[INFO] [stdout]    --> src/catalog/mod.rs:214:14
[INFO] [stdout]     |
[INFO] [stdout] 214 |             .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |prev| {
[INFO] [stdout]     |              ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 214 -             .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |prev| {
[INFO] [stdout] 214 +             .try_update(Ordering::Relaxed, Ordering::Relaxed, |prev| {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::<u32>::fetch_update`: renamed to `try_update` for consistency
[INFO] [stdout]    --> src/concurrency/mod.rs:276:14
[INFO] [stdout]     |
[INFO] [stdout] 276 |             .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |val| {
[INFO] [stdout]     |              ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 276 -             .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |val| {
[INFO] [stdout] 276 +             .try_update(Ordering::Relaxed, Ordering::Relaxed, |val| {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/buffer/buffer_manager.rs:29:17
[INFO] [stdout]    |
[INFO] [stdout] 29 |     pub fn read(&self) -> RwLockReadGuard<[u8]> {
[INFO] [stdout]    |                 ^^^^^     ^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 29 |     pub fn read(&self) -> RwLockReadGuard<'_, [u8]> {
[INFO] [stdout]    |                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/buffer/buffer_manager.rs:33:18
[INFO] [stdout]    |
[INFO] [stdout] 33 |     pub fn write(&self) -> RwLockWriteGuard<[u8]> {
[INFO] [stdout]    |                  ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                  |
[INFO] [stdout]    |                  the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 33 |     pub fn write(&self) -> RwLockWriteGuard<'_, [u8]> {
[INFO] [stdout]    |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/buffer/buffer_manager.rs:117:9
[INFO] [stdout]     |
[INFO] [stdout] 117 |         &self,
[INFO] [stdout]     |         ^^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 120 |     ) -> Result<Option<BufferGuard>> {
[INFO] [stdout]     |                        ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 120 |     ) -> Result<Option<BufferGuard<'_>>> {
[INFO] [stdout]     |                                   ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/buffer/buffer_manager.rs:147:18
[INFO] [stdout]     |
[INFO] [stdout] 147 |     pub fn fetch(&self, page_id: PageId) -> Result<Option<BufferGuard>> {
[INFO] [stdout]     |                  ^^^^^ the lifetime is elided here        ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 147 |     pub fn fetch(&self, page_id: PageId) -> Result<Option<BufferGuard<'_>>> {
[INFO] [stdout]     |                                                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/concurrency/mod.rs:242:9
[INFO] [stdout]     |
[INFO] [stdout] 242 |         &self,
[INFO] [stdout]     |         ^^^^^ the lifetime is elided here
[INFO] [stdout] 243 |         isolation_level: Option<IsolationLevel>,
[INFO] [stdout] 244 |     ) -> Result<Transaction> {
[INFO] [stdout]     |                 ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 244 |     ) -> Result<Transaction<'_>> {
[INFO] [stdout]     |                            ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/concurrency/mod.rs:248:39
[INFO] [stdout]     |
[INFO] [stdout] 248 |     pub fn start_implicit_transaction(&self) -> Result<Transaction> {
[INFO] [stdout]     |                                       ^^^^^            ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                       |
[INFO] [stdout]     |                                       the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 248 |     pub fn start_implicit_transaction(&self) -> Result<Transaction<'_>> {
[INFO] [stdout]     |                                                                   ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/concurrency/mod.rs:270:9
[INFO] [stdout]     |
[INFO] [stdout] 270 |         &self,
[INFO] [stdout]     |         ^^^^^ the lifetime is elided here
[INFO] [stdout] ...
[INFO] [stdout] 273 |     ) -> Result<Transaction> {
[INFO] [stdout]     |                 ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 273 |     ) -> Result<Transaction<'_>> {
[INFO] [stdout]     |                            ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/concurrency/mod.rs:308:22
[INFO] [stdout]     |
[INFO] [stdout] 308 |     pub fn bootstrap(&self) -> Transaction {
[INFO] [stdout]     |                      ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                      |
[INFO] [stdout]     |                      the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 308 |     pub fn bootstrap(&self) -> Transaction<'_> {
[INFO] [stdout]     |                                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/concurrency/mod.rs:358:17
[INFO] [stdout]     |
[INFO] [stdout] 358 |     fn get_page(&self, tid: TransactionId) -> Result<Option<BufferGuard>> {
[INFO] [stdout]     |                 ^^^^^ the lifetime is elided here           ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 358 |     fn get_page(&self, tid: TransactionId) -> Result<Option<BufferGuard<'_>>> {
[INFO] [stdout]     |                                                                        ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/concurrency/lock_manager.rs:127:23
[INFO] [stdout]     |
[INFO] [stdout] 127 |     pub fn lock_tuple(&self, to_lock: (TableId, TupleId), mode: LockMode) -> LockGuard {
[INFO] [stdout]     |                       ^^^^^ the lifetime is elided here                      ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 127 |     pub fn lock_tuple(&self, to_lock: (TableId, TupleId), mode: LockMode) -> LockGuard<'_> {
[INFO] [stdout]     |                                                                                       ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/concurrency/lock_manager.rs:132:29
[INFO] [stdout]     |
[INFO] [stdout] 132 |     pub fn lock_transaction(&self, to_lock: TransactionId, mode: LockMode) -> LockGuard {
[INFO] [stdout]     |                             ^^^^^ the lifetime is elided here                 ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 132 |     pub fn lock_transaction(&self, to_lock: TransactionId, mode: LockMode) -> LockGuard<'_> {
[INFO] [stdout]     |                                                                                        ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/concurrency/lock_manager.rs:136:13
[INFO] [stdout]     |
[INFO] [stdout] 136 |     fn lock(&self, tag: LockTag, mode: LockMode) -> LockGuard {
[INFO] [stdout]     |             ^^^^^ the lifetime is elided here       ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 136 |     fn lock(&self, tag: LockTag, mode: LockMode) -> LockGuard<'_> {
[INFO] [stdout]     |                                                              ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/executors/mod.rs:213:50
[INFO] [stdout]     |
[INFO] [stdout] 213 |     fn get_table(&'a self, table_id: TableId) -> &Table {
[INFO] [stdout]     |                   -- the lifetime is named here  ^^^^^^ the same lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]     |
[INFO] [stdout] 213 |     fn get_table(&'a self, table_id: TableId) -> &'a Table {
[INFO] [stdout]     |                                                   ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/storage/file_manager.rs:68:17
[INFO] [stdout]    |
[INFO] [stdout] 68 |     fn get_file(&self, table_id: TableId) -> Result<Ref<TableId, FileHandle>> {
[INFO] [stdout]    |                 ^^^^^ the lifetime is elided here   ^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 68 |     fn get_file(&self, table_id: TableId) -> Result<Ref<'_, TableId, FileHandle>> {
[INFO] [stdout]    |                                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/storage/heap/table.rs:189:19
[INFO] [stdout]     |
[INFO] [stdout] 189 |     fn fetch_page(&self, page_no: PageNo) -> Result<BufferGuard> {
[INFO] [stdout]     |                   ^^^^^ the lifetime is elided here ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 189 |     fn fetch_page(&self, page_no: PageNo) -> Result<BufferGuard<'_>> {
[INFO] [stdout]     |                                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/storage/heap/table.rs:200:26
[INFO] [stdout]     |
[INFO] [stdout] 200 |     fn allocate_new_page(&self) -> Result<BufferGuard> {
[INFO] [stdout]     |                          ^^^^^            ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                          |
[INFO] [stdout]     |                          the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 200 |     fn allocate_new_page(&self) -> Result<BufferGuard<'_>> {
[INFO] [stdout]     |                                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 10.42s
[INFO] running `Command { std: "docker" "inspect" "726b6decfd22b2cb55fdf48d9d55e834d0297e7f1d98b5dd8ba0b8f6602e14a8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "726b6decfd22b2cb55fdf48d9d55e834d0297e7f1d98b5dd8ba0b8f6602e14a8" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen" "--release", kill_on_drop: false }`
[INFO] [stderr] warning: unnecessary parentheses around closure body
[INFO] [stderr]    --> src/executors/nested_loop_join_executor.rs:197:36
[INFO] [stderr]     |
[INFO] [stderr] 197 |         result.sort_by_key(|tuple| (tuple.values()[0].as_i32()));
[INFO] [stderr]     |                                    ^                          ^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 197 -         result.sort_by_key(|tuple| (tuple.values()[0].as_i32()));
[INFO] [stderr] 197 +         result.sort_by_key(|tuple| tuple.values()[0].as_i32());
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around closure body
[INFO] [stderr]    --> src/executors/nested_loop_join_executor.rs:215:36
[INFO] [stderr]     |
[INFO] [stderr] 215 |         result.sort_by_key(|tuple| (tuple.values()[0].as_i32()));
[INFO] [stderr]     |                                    ^                          ^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 215 -         result.sort_by_key(|tuple| (tuple.values()[0].as_i32()));
[INFO] [stderr] 215 +         result.sort_by_key(|tuple| tuple.values()[0].as_i32());
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around closure body
[INFO] [stderr]    --> src/executors/nested_loop_join_executor.rs:233:36
[INFO] [stderr]     |
[INFO] [stderr] 233 |         result.sort_by_key(|tuple| (tuple.values()[0].as_i32()));
[INFO] [stderr]     |                                    ^                          ^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 233 -         result.sort_by_key(|tuple| (tuple.values()[0].as_i32()));
[INFO] [stderr] 233 +         result.sort_by_key(|tuple| tuple.values()[0].as_i32());
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around closure body
[INFO] [stderr]    --> src/executors/nested_loop_join_executor.rs:252:36
[INFO] [stderr]     |
[INFO] [stderr] 252 |         result.sort_by_key(|tuple| (tuple.values()[1].as_i32()));
[INFO] [stderr]     |                                    ^                          ^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 252 -         result.sort_by_key(|tuple| (tuple.values()[1].as_i32()));
[INFO] [stderr] 252 +         result.sort_by_key(|tuple| tuple.values()[1].as_i32());
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `std::sync::atomic::Atomic::<u16>::fetch_update`: renamed to `try_update` for consistency
[INFO] [stderr]    --> src/catalog/mod.rs:214:14
[INFO] [stderr]     |
[INFO] [stderr] 214 |             .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |prev| {
[INFO] [stderr]     |              ^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] help: replace the use of the deprecated method
[INFO] [stderr]     |
[INFO] [stderr] 214 -             .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |prev| {
[INFO] [stderr] 214 +             .try_update(Ordering::Relaxed, Ordering::Relaxed, |prev| {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `std::sync::atomic::Atomic::<u32>::fetch_update`: renamed to `try_update` for consistency
[INFO] [stderr]    --> src/concurrency/mod.rs:276:14
[INFO] [stderr]     |
[INFO] [stderr] 276 |             .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |val| {
[INFO] [stderr]     |              ^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr] help: replace the use of the deprecated method
[INFO] [stderr]     |
[INFO] [stderr] 276 -             .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |val| {
[INFO] [stderr] 276 +             .try_update(Ordering::Relaxed, Ordering::Relaxed, |val| {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/buffer/buffer_manager.rs:29:17
[INFO] [stderr]    |
[INFO] [stderr] 29 |     pub fn read(&self) -> RwLockReadGuard<[u8]> {
[INFO] [stderr]    |                 ^^^^^     ^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |                 |
[INFO] [stderr]    |                 the lifetime is elided here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]    |
[INFO] [stderr] 29 |     pub fn read(&self) -> RwLockReadGuard<'_, [u8]> {
[INFO] [stderr]    |                                           +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/buffer/buffer_manager.rs:33:18
[INFO] [stderr]    |
[INFO] [stderr] 33 |     pub fn write(&self) -> RwLockWriteGuard<[u8]> {
[INFO] [stderr]    |                  ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |                  |
[INFO] [stderr]    |                  the lifetime is elided here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]    |
[INFO] [stderr] 33 |     pub fn write(&self) -> RwLockWriteGuard<'_, [u8]> {
[INFO] [stderr]    |                                             +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/buffer/buffer_manager.rs:117:9
[INFO] [stderr]     |
[INFO] [stderr] 117 |         &self,
[INFO] [stderr]     |         ^^^^^ the lifetime is elided here
[INFO] [stderr] ...
[INFO] [stderr] 120 |     ) -> Result<Option<BufferGuard>> {
[INFO] [stderr]     |                        ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 120 |     ) -> Result<Option<BufferGuard<'_>>> {
[INFO] [stderr]     |                                   ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/buffer/buffer_manager.rs:147:18
[INFO] [stderr]     |
[INFO] [stderr] 147 |     pub fn fetch(&self, page_id: PageId) -> Result<Option<BufferGuard>> {
[INFO] [stderr]     |                  ^^^^^ the lifetime is elided here        ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 147 |     pub fn fetch(&self, page_id: PageId) -> Result<Option<BufferGuard<'_>>> {
[INFO] [stderr]     |                                                                      ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/concurrency/mod.rs:242:9
[INFO] [stderr]     |
[INFO] [stderr] 242 |         &self,
[INFO] [stderr]     |         ^^^^^ the lifetime is elided here
[INFO] [stderr] 243 |         isolation_level: Option<IsolationLevel>,
[INFO] [stderr] 244 |     ) -> Result<Transaction> {
[INFO] [stderr]     |                 ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 244 |     ) -> Result<Transaction<'_>> {
[INFO] [stderr]     |                            ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/concurrency/mod.rs:248:39
[INFO] [stderr]     |
[INFO] [stderr] 248 |     pub fn start_implicit_transaction(&self) -> Result<Transaction> {
[INFO] [stderr]     |                                       ^^^^^            ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                                       |
[INFO] [stderr]     |                                       the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 248 |     pub fn start_implicit_transaction(&self) -> Result<Transaction<'_>> {
[INFO] [stderr]     |                                                                   ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/concurrency/mod.rs:270:9
[INFO] [stderr]     |
[INFO] [stderr] 270 |         &self,
[INFO] [stderr]     |         ^^^^^ the lifetime is elided here
[INFO] [stderr] ...
[INFO] [stderr] 273 |     ) -> Result<Transaction> {
[INFO] [stderr]     |                 ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 273 |     ) -> Result<Transaction<'_>> {
[INFO] [stderr]     |                            ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/concurrency/mod.rs:308:22
[INFO] [stderr]     |
[INFO] [stderr] 308 |     pub fn bootstrap(&self) -> Transaction {
[INFO] [stderr]     |                      ^^^^^     ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                      |
[INFO] [stderr]     |                      the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 308 |     pub fn bootstrap(&self) -> Transaction<'_> {
[INFO] [stderr]     |                                           ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/concurrency/mod.rs:358:17
[INFO] [stderr]     |
[INFO] [stderr] 358 |     fn get_page(&self, tid: TransactionId) -> Result<Option<BufferGuard>> {
[INFO] [stderr]     |                 ^^^^^ the lifetime is elided here           ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 358 |     fn get_page(&self, tid: TransactionId) -> Result<Option<BufferGuard<'_>>> {
[INFO] [stderr]     |                                                                        ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/concurrency/lock_manager.rs:127:23
[INFO] [stderr]     |
[INFO] [stderr] 127 |     pub fn lock_tuple(&self, to_lock: (TableId, TupleId), mode: LockMode) -> LockGuard {
[INFO] [stderr]     |                       ^^^^^ the lifetime is elided here                      ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 127 |     pub fn lock_tuple(&self, to_lock: (TableId, TupleId), mode: LockMode) -> LockGuard<'_> {
[INFO] [stderr]     |                                                                                       ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/concurrency/lock_manager.rs:132:29
[INFO] [stderr]     |
[INFO] [stderr] 132 |     pub fn lock_transaction(&self, to_lock: TransactionId, mode: LockMode) -> LockGuard {
[INFO] [stderr]     |                             ^^^^^ the lifetime is elided here                 ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 132 |     pub fn lock_transaction(&self, to_lock: TransactionId, mode: LockMode) -> LockGuard<'_> {
[INFO] [stderr]     |                                                                                        ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/concurrency/lock_manager.rs:136:13
[INFO] [stderr]     |
[INFO] [stderr] 136 |     fn lock(&self, tag: LockTag, mode: LockMode) -> LockGuard {
[INFO] [stderr]     |             ^^^^^ the lifetime is elided here       ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 136 |     fn lock(&self, tag: LockTag, mode: LockMode) -> LockGuard<'_> {
[INFO] [stderr]     |                                                              ++++
[INFO] [stderr] 
[INFO] [stderr] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stderr]    --> src/executors/mod.rs:213:50
[INFO] [stderr]     |
[INFO] [stderr] 213 |     fn get_table(&'a self, table_id: TableId) -> &Table {
[INFO] [stderr]     |                   -- the lifetime is named here  ^^^^^^ the same lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: consistently use `'a`
[INFO] [stderr]     |
[INFO] [stderr] 213 |     fn get_table(&'a self, table_id: TableId) -> &'a Table {
[INFO] [stderr]     |                                                   ++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/storage/file_manager.rs:68:17
[INFO] [stderr]    |
[INFO] [stderr] 68 |     fn get_file(&self, table_id: TableId) -> Result<Ref<TableId, FileHandle>> {
[INFO] [stderr]    |                 ^^^^^ the lifetime is elided here   ^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]    |
[INFO] [stderr] 68 |     fn get_file(&self, table_id: TableId) -> Result<Ref<'_, TableId, FileHandle>> {
[INFO] [stderr]    |                                                         +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/storage/heap/table.rs:189:19
[INFO] [stderr]     |
[INFO] [stderr] 189 |     fn fetch_page(&self, page_no: PageNo) -> Result<BufferGuard> {
[INFO] [stderr]     |                   ^^^^^ the lifetime is elided here ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 189 |     fn fetch_page(&self, page_no: PageNo) -> Result<BufferGuard<'_>> {
[INFO] [stderr]     |                                                                ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/storage/heap/table.rs:200:26
[INFO] [stderr]     |
[INFO] [stderr] 200 |     fn allocate_new_page(&self) -> Result<BufferGuard> {
[INFO] [stderr]     |                          ^^^^^            ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                          |
[INFO] [stderr]     |                          the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 200 |     fn allocate_new_page(&self) -> Result<BufferGuard<'_>> {
[INFO] [stderr]     |                                                      ++++
[INFO] [stderr] 
[INFO] [stderr] warning: `erdb` (bin "erdb" test) generated 22 warnings (run `cargo fix --bin "erdb" -p erdb --tests` to apply 22 suggestions)
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 0.05s
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/release/build/erdb/e86d78659e98129e/out/erdb-e86d78659e98129e)
[INFO] [stdout] 
[INFO] [stdout] running 67 tests
[INFO] [stdout] test buffer::clock_replacer::tests::basic_test ... ok
[INFO] [stdout] test buffer::clock_replacer::tests::correct_free_buffer_order ... ok
[INFO] [stdout] test concurrency::lock_manager::tests::shared_lock_can_be_granted_multiple_times ... ok
[INFO] [stdout] test buffer::buffer_manager::tests::basic_binary_data_test ... ok
[INFO] [stdout] test analyzer::tests::can_analyze_values ... ok
[INFO] [stdout] test catalog::tests::can_create_system_tables ... ok
[INFO] [stdout] test analyzer::tests::can_analyze_count_aggregations ... ok
[INFO] [stdout] test analyzer::tests::can_bind_wildcard_select ... ok
[INFO] [stdout] test analyzer::tests::mixing_aggregations_and_column_references_is_disallowed ... ok
[INFO] [stdout] test analyzer::tests::can_analyze_arithmetic_expressions ... ok
[INFO] [stdout] test analyzer::tests::can_bind_qualified_wildcard_select ... ok
[INFO] [stdout] test catalog::tests::can_create_user_table ... ok
[INFO] [stdout] test executors::aggregate_executor::tests::can_execute_max_aggregations ... ok
[INFO] [stdout] test executors::aggregate_executor::tests::can_execute_count_aggregations ... ok
[INFO] [stdout] test executors::filter_executor::tests::can_execute_queries_with_filter_conditions ... ok
[INFO] [stdout] test executors::delete_executor::tests::can_execute_delete_statements ... ok
[INFO] [stdout] test executors::aggregate_executor::tests::can_execute_combination_of_aggregations ... ok
[INFO] [stdout] test executors::projection_executor::tests::can_execute_arithmetic_expressions ... ok
[INFO] [stdout] test executors::projection_executor::tests::can_execute_comparison_expressions ... ok
[INFO] [stdout] test optimizer::tests::can_push_down_cross_joins ... ok
[INFO] [stdout] test parser::tests::can_parse_arithmetic_expression ... ok
[INFO] [stdout] test parser::tests::can_parse_comparisons_eq ... ok
[INFO] [stdout] test parser::tests::can_parse_create_table_statements ... ok
[INFO] [stdout] test parser::tests::can_parse_empty_tables ... ok
[INFO] [stdout] test parser::tests::can_parse_function_calls ... ok
[INFO] [stdout] test parser::tests::can_parse_insert_select_into_table ... ok
[INFO] [stdout] test parser::tests::can_parse_insert_values_into_table ... ok
[INFO] [stdout] test parser::tests::can_parse_select_statements_with_aliases ... ok
[INFO] [stdout] test parser::tests::can_parse_update_statements ... ok
[INFO] [stdout] test parser::tests::can_parse_values ... ok
[INFO] [stdout] test parser::tests::can_parse_wildcard_select_statement ... ok
[INFO] [stdout] test parser::token::tests::can_tokenize_create_table_statement ... ok
[INFO] [stdout] test parser::token::tests::can_tokenize_insert_into_table ... ok
[INFO] [stdout] test parser::token::tests::can_tokenize_select_of_columns ... ok
[INFO] [stdout] test parser::token::tests::can_tokenize_values ... ok
[INFO] [stdout] test parser::token::tests::can_tokenize_wildcard_select ... ok
[INFO] [stdout] test executors::insert_executor::tests::repeatable_read_sees_own_inserted_values ... ok
[INFO] [stdout] test planner::physical_plan::tests::can_evaluate_arithmetic_expressions ... ok
[INFO] [stdout] test planner::physical_plan::tests::can_evaluate_is_not_null ... ok
[INFO] [stdout] test planner::physical_plan::tests::can_evaluate_is_null ... ok
[INFO] [stdout] test planner::physical_plan::tests::can_format_physical_plan ... ok
[INFO] [stdout] test planner::physical_plan::tests::test_count_aggregation ... ok
[INFO] [stdout] test planner::physical_plan::tests::test_max_aggregation_of_integers ... ok
[INFO] [stdout] test planner::physical_plan::tests::test_max_aggregation_of_text ... ok
[INFO] [stdout] test executors::projection_executor::tests::can_execute_or_and_expressions ... ok
[INFO] [stdout] test executors::insert_executor::tests::can_insert_from_own_table ... ok
[INFO] [stdout] test storage::file_manager::tests::basic_test ... ok
[INFO] [stdout] test storage::heap::table::tests::basic_test ... ok
[INFO] [stdout] test storage::heap::table::tests::can_delete_tuple ... ok
[INFO] [stdout] test storage::heap::table::tests::can_update_tuple ... ok
[INFO] [stdout] test storage::heap::tuple::tests::can_serialize_tuple ... ok
[INFO] [stdout] test tuple::value::tests::serialize_parse_test ... ok
[INFO] [stdout] test executors::tests::can_only_see_committed_tuples ... ok
[INFO] [stdout] test executors::projection_executor::tests::repeatable_read_selects_see_only_rows_committed_before_transaction ... ok
[INFO] [stdout] test concurrency::lock_manager::tests::shared_and_exclusive_lock_cannot_be_granted_simultaneously ... ok
[INFO] [stdout] test executors::projection_executor::tests::read_committed_sees_all_committed_rows ... ok
[INFO] [stdout] test executors::update_executor::tests::repeatable_read_updates_fail_on_concurrent_updates ... ok
[INFO] [stdout] test executors::update_executor::tests::can_execute_update_statements ... ok
[INFO] [stdout] test storage::heap::table::tests::trying_to_update_updated_tuple_results_in_updated_location ... ok
[INFO] [stdout] test executors::nested_loop_join_executor::tests::can_execute_inner_joins ... ok
[INFO] [stdout] test executors::nested_loop_join_executor::tests::can_execute_cross_joins ... ok
[INFO] [stdout] test executors::nested_loop_join_executor::tests::can_execute_left_joins ... ok
[INFO] [stdout] test executors::nested_loop_join_executor::tests::conditions_on_cross_joins ... ok
[INFO] [stdout] test executors::nested_loop_join_executor::tests::can_execute_right_joins ... ok
[INFO] [stdout] test storage::heap::table::tests::already_deleted_tuple_does_not_need_any_action ... ok
[INFO] [stdout] test storage::heap::table::tests::can_delete_tuple_if_previous_transaction_aborted_delete ... ok
[INFO] [stdout] test concurrency::tests::can_bootstrap_and_load_logs has been running for over 60 seconds
[INFO] [stdout] test concurrency::tests::can_bootstrap_and_load_logs ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 67 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 114.20s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "726b6decfd22b2cb55fdf48d9d55e834d0297e7f1d98b5dd8ba0b8f6602e14a8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "726b6decfd22b2cb55fdf48d9d55e834d0297e7f1d98b5dd8ba0b8f6602e14a8", kill_on_drop: false }`
[INFO] [stdout] 726b6decfd22b2cb55fdf48d9d55e834d0297e7f1d98b5dd8ba0b8f6602e14a8
