[INFO] cloning repository https://github.com/tkmct/db_tutorial
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/tkmct/db_tutorial" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftkmct%2Fdb_tutorial", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftkmct%2Fdb_tutorial'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 51eb3b4bef9a58bb57422533521fb17bf685adf1
[INFO] testing tkmct/db_tutorial against master#733b47ea4b1b86216f14ef56e49440c33933f230+rustflags=-Copt-level=3 for pr-138759
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftkmct%2Fdb_tutorial" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/tkmct/db_tutorial
[INFO] finished tweaking git repo https://github.com/tkmct/db_tutorial
[INFO] tweaked toml for git repo https://github.com/tkmct/db_tutorial written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/tkmct/db_tutorial on toolchain 733b47ea4b1b86216f14ef56e49440c33933f230
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+733b47ea4b1b86216f14ef56e49440c33933f230" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/tkmct/db_tutorial 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" "+733b47ea4b1b86216f14ef56e49440c33933f230" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+733b47ea4b1b86216f14ef56e49440c33933f230" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] dc39dee6cc4ecf1d26a77b56a1d2899e0c22e34699b3bc5a13e362e4d60f7c55
[INFO] running `Command { std: "docker" "start" "-a" "dc39dee6cc4ecf1d26a77b56a1d2899e0c22e34699b3bc5a13e362e4d60f7c55", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "dc39dee6cc4ecf1d26a77b56a1d2899e0c22e34699b3bc5a13e362e4d60f7c55", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "dc39dee6cc4ecf1d26a77b56a1d2899e0c22e34699b3bc5a13e362e4d60f7c55", kill_on_drop: false }`
[INFO] [stdout] dc39dee6cc4ecf1d26a77b56a1d2899e0c22e34699b3bc5a13e362e4d60f7c55
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Copt-level=3" "-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" "+733b47ea4b1b86216f14ef56e49440c33933f230" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] a7b168c73552843def119cbb9938eb1f79341cbb9a9e011ce566c077e48daedf
[INFO] running `Command { std: "docker" "start" "-a" "a7b168c73552843def119cbb9938eb1f79341cbb9a9e011ce566c077e48daedf", kill_on_drop: false }`
[INFO] [stderr]    Compiling db_tutorial v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/btree.rs:116:34
[INFO] [stdout]     |
[INFO] [stdout] 116 |     pub fn key_duplicated(&self, key: Key) -> bool {
[INFO] [stdout]     |                                  ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/table.rs:32:24
[INFO] [stdout]    |
[INFO] [stdout] 32 |     pub fn table_start(&mut self) -> Cursor {
[INFO] [stdout]    |                        ^^^^^^^^^     ------ the lifetime gets resolved as `'_`
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]    |
[INFO] [stdout] 32 |     pub fn table_start(&mut self) -> Cursor<'_> {
[INFO] [stdout]    |                                            ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/table.rs:39:22
[INFO] [stdout]    |
[INFO] [stdout] 39 |     pub fn table_end(&mut self) -> Cursor {
[INFO] [stdout]    |                      ^^^^^^^^^     ------ the lifetime gets resolved as `'_`
[INFO] [stdout]    |                      |
[INFO] [stdout]    |                      this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]    |
[INFO] [stdout] 39 |     pub fn table_end(&mut self) -> Cursor<'_> {
[INFO] [stdout]    |                                          ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/table.rs:46:23
[INFO] [stdout]    |
[INFO] [stdout] 46 |     pub fn table_find(&mut self, key: u32) -> Cursor {
[INFO] [stdout]    |                       ^^^^^^^^^               ------ the lifetime gets resolved as `'_`
[INFO] [stdout]    |                       |
[INFO] [stdout]    |                       this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]    |
[INFO] [stdout] 46 |     pub fn table_find(&mut self, key: u32) -> Cursor<'_> {
[INFO] [stdout]    |                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/table.rs:57:27
[INFO] [stdout]    |
[INFO] [stdout] 57 |     pub fn leaf_node_find(&mut self, page_num: usize, key: u32) -> Cursor {
[INFO] [stdout]    |                           ^^^^^^^^^                                ------ the lifetime gets resolved as `'_`
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]    |
[INFO] [stdout] 57 |     pub fn leaf_node_find(&mut self, page_num: usize, key: u32) -> Cursor<'_> {
[INFO] [stdout]    |                                                                          ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/btree.rs:116:34
[INFO] [stdout]     |
[INFO] [stdout] 116 |     pub fn key_duplicated(&self, key: Key) -> bool {
[INFO] [stdout]     |                                  ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `table_end` is never used
[INFO] [stdout]   --> src/table.rs:39:12
[INFO] [stdout]    |
[INFO] [stdout] 9  | impl Table {
[INFO] [stdout]    | ---------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 39 |     pub fn table_end(&mut self) -> Cursor {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/table.rs:32:24
[INFO] [stdout]    |
[INFO] [stdout] 32 |     pub fn table_start(&mut self) -> Cursor {
[INFO] [stdout]    |                        ^^^^^^^^^     ------ the lifetime gets resolved as `'_`
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]    |
[INFO] [stdout] 32 |     pub fn table_start(&mut self) -> Cursor<'_> {
[INFO] [stdout]    |                                            ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/table.rs:39:22
[INFO] [stdout]    |
[INFO] [stdout] 39 |     pub fn table_end(&mut self) -> Cursor {
[INFO] [stdout]    |                      ^^^^^^^^^     ------ the lifetime gets resolved as `'_`
[INFO] [stdout]    |                      |
[INFO] [stdout]    |                      this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]    |
[INFO] [stdout] 39 |     pub fn table_end(&mut self) -> Cursor<'_> {
[INFO] [stdout]    |                                          ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/table.rs:46:23
[INFO] [stdout]    |
[INFO] [stdout] 46 |     pub fn table_find(&mut self, key: u32) -> Cursor {
[INFO] [stdout]    |                       ^^^^^^^^^               ------ the lifetime gets resolved as `'_`
[INFO] [stdout]    |                       |
[INFO] [stdout]    |                       this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]    |
[INFO] [stdout] 46 |     pub fn table_find(&mut self, key: u32) -> Cursor<'_> {
[INFO] [stdout]    |                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/table.rs:57:27
[INFO] [stdout]    |
[INFO] [stdout] 57 |     pub fn leaf_node_find(&mut self, page_num: usize, key: u32) -> Cursor {
[INFO] [stdout]    |                           ^^^^^^^^^                                ------ the lifetime gets resolved as `'_`
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]    |
[INFO] [stdout] 57 |     pub fn leaf_node_find(&mut self, page_num: usize, key: u32) -> Cursor<'_> {
[INFO] [stdout]    |                                                                          ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2.53s
[INFO] running `Command { std: "docker" "inspect" "a7b168c73552843def119cbb9938eb1f79341cbb9a9e011ce566c077e48daedf", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a7b168c73552843def119cbb9938eb1f79341cbb9a9e011ce566c077e48daedf", kill_on_drop: false }`
[INFO] [stdout] a7b168c73552843def119cbb9938eb1f79341cbb9a9e011ce566c077e48daedf
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Copt-level=3" "-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" "+733b47ea4b1b86216f14ef56e49440c33933f230" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 8d09ecb64b5ac7ff4bd0ec773c3a3d9c63f94d5cc458f29edcb242f87039dab9
[INFO] running `Command { std: "docker" "start" "-a" "8d09ecb64b5ac7ff4bd0ec773c3a3d9c63f94d5cc458f29edcb242f87039dab9", kill_on_drop: false }`
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/btree.rs:116:34
[INFO] [stdout]     |
[INFO] [stdout] 116 |     pub fn key_duplicated(&self, key: Key) -> bool {
[INFO] [stdout]     |                                  ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/table.rs:32:24
[INFO] [stdout]    |
[INFO] [stdout] 32 |     pub fn table_start(&mut self) -> Cursor {
[INFO] [stdout]    |                        ^^^^^^^^^     ------ the lifetime gets resolved as `'_`
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]    |
[INFO] [stdout] 32 |     pub fn table_start(&mut self) -> Cursor<'_> {
[INFO] [stdout]    |                                            ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/table.rs:39:22
[INFO] [stdout]    |
[INFO] [stdout] 39 |     pub fn table_end(&mut self) -> Cursor {
[INFO] [stdout]    |                      ^^^^^^^^^     ------ the lifetime gets resolved as `'_`
[INFO] [stdout]    |                      |
[INFO] [stdout]    |                      this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]    |
[INFO] [stdout] 39 |     pub fn table_end(&mut self) -> Cursor<'_> {
[INFO] [stdout]    |                                          ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/table.rs:46:23
[INFO] [stdout]    |
[INFO] [stdout] 46 |     pub fn table_find(&mut self, key: u32) -> Cursor {
[INFO] [stdout]    |                       ^^^^^^^^^               ------ the lifetime gets resolved as `'_`
[INFO] [stdout]    |                       |
[INFO] [stdout]    |                       this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]    |
[INFO] [stdout] 46 |     pub fn table_find(&mut self, key: u32) -> Cursor<'_> {
[INFO] [stdout]    |                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/table.rs:57:27
[INFO] [stdout]    |
[INFO] [stdout] 57 |     pub fn leaf_node_find(&mut self, page_num: usize, key: u32) -> Cursor {
[INFO] [stdout]    |                           ^^^^^^^^^                                ------ the lifetime gets resolved as `'_`
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]    |
[INFO] [stdout] 57 |     pub fn leaf_node_find(&mut self, page_num: usize, key: u32) -> Cursor<'_> {
[INFO] [stdout]    |                                                                          ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling db_tutorial v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/btree.rs:116:34
[INFO] [stdout]     |
[INFO] [stdout] 116 |     pub fn key_duplicated(&self, key: Key) -> bool {
[INFO] [stdout]     |                                  ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/btree.rs:116:34
[INFO] [stdout]     |
[INFO] [stdout] 116 |     pub fn key_duplicated(&self, key: Key) -> bool {
[INFO] [stdout]     |                                  ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/table.rs:32:24
[INFO] [stdout]    |
[INFO] [stdout] 32 |     pub fn table_start(&mut self) -> Cursor {
[INFO] [stdout]    |                        ^^^^^^^^^     ------ the lifetime gets resolved as `'_`
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]    |
[INFO] [stdout] 32 |     pub fn table_start(&mut self) -> Cursor<'_> {
[INFO] [stdout]    |                                            ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/table.rs:39:22
[INFO] [stdout]    |
[INFO] [stdout] 39 |     pub fn table_end(&mut self) -> Cursor {
[INFO] [stdout]    |                      ^^^^^^^^^     ------ the lifetime gets resolved as `'_`
[INFO] [stdout]    |                      |
[INFO] [stdout]    |                      this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]    |
[INFO] [stdout] 39 |     pub fn table_end(&mut self) -> Cursor<'_> {
[INFO] [stdout]    |                                          ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/table.rs:46:23
[INFO] [stdout]    |
[INFO] [stdout] 46 |     pub fn table_find(&mut self, key: u32) -> Cursor {
[INFO] [stdout]    |                       ^^^^^^^^^               ------ the lifetime gets resolved as `'_`
[INFO] [stdout]    |                       |
[INFO] [stdout]    |                       this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]    |
[INFO] [stdout] 46 |     pub fn table_find(&mut self, key: u32) -> Cursor<'_> {
[INFO] [stdout]    |                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/table.rs:57:27
[INFO] [stdout]    |
[INFO] [stdout] 57 |     pub fn leaf_node_find(&mut self, page_num: usize, key: u32) -> Cursor {
[INFO] [stdout]    |                           ^^^^^^^^^                                ------ the lifetime gets resolved as `'_`
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]    |
[INFO] [stdout] 57 |     pub fn leaf_node_find(&mut self, page_num: usize, key: u32) -> Cursor<'_> {
[INFO] [stdout]    |                                                                          ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `table_end` is never used
[INFO] [stdout]   --> src/table.rs:39:12
[INFO] [stdout]    |
[INFO] [stdout] 9  | impl Table {
[INFO] [stdout]    | ---------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 39 |     pub fn table_end(&mut self) -> Cursor {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/table.rs:32:24
[INFO] [stdout]    |
[INFO] [stdout] 32 |     pub fn table_start(&mut self) -> Cursor {
[INFO] [stdout]    |                        ^^^^^^^^^     ------ the lifetime gets resolved as `'_`
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]    |
[INFO] [stdout] 32 |     pub fn table_start(&mut self) -> Cursor<'_> {
[INFO] [stdout]    |                                            ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/table.rs:39:22
[INFO] [stdout]    |
[INFO] [stdout] 39 |     pub fn table_end(&mut self) -> Cursor {
[INFO] [stdout]    |                      ^^^^^^^^^     ------ the lifetime gets resolved as `'_`
[INFO] [stdout]    |                      |
[INFO] [stdout]    |                      this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]    |
[INFO] [stdout] 39 |     pub fn table_end(&mut self) -> Cursor<'_> {
[INFO] [stdout]    |                                          ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/table.rs:46:23
[INFO] [stdout]    |
[INFO] [stdout] 46 |     pub fn table_find(&mut self, key: u32) -> Cursor {
[INFO] [stdout]    |                       ^^^^^^^^^               ------ the lifetime gets resolved as `'_`
[INFO] [stdout]    |                       |
[INFO] [stdout]    |                       this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]    |
[INFO] [stdout] 46 |     pub fn table_find(&mut self, key: u32) -> Cursor<'_> {
[INFO] [stdout]    |                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/table.rs:57:27
[INFO] [stdout]    |
[INFO] [stdout] 57 |     pub fn leaf_node_find(&mut self, page_num: usize, key: u32) -> Cursor {
[INFO] [stdout]    |                           ^^^^^^^^^                                ------ the lifetime gets resolved as `'_`
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]    |
[INFO] [stdout] 57 |     pub fn leaf_node_find(&mut self, page_num: usize, key: u32) -> Cursor<'_> {
[INFO] [stdout]    |                                                                          ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 2.54s
[INFO] running `Command { std: "docker" "inspect" "8d09ecb64b5ac7ff4bd0ec773c3a3d9c63f94d5cc458f29edcb242f87039dab9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8d09ecb64b5ac7ff4bd0ec773c3a3d9c63f94d5cc458f29edcb242f87039dab9", kill_on_drop: false }`
[INFO] [stdout] 8d09ecb64b5ac7ff4bd0ec773c3a3d9c63f94d5cc458f29edcb242f87039dab9
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Copt-level=3" "-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" "+733b47ea4b1b86216f14ef56e49440c33933f230" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] ad6cb818521aa0ad643adc99d0093250ecc60ee6dade0effe2e790db2eab769d
[INFO] running `Command { std: "docker" "start" "-a" "ad6cb818521aa0ad643adc99d0093250ecc60ee6dade0effe2e790db2eab769d", kill_on_drop: false }`
[INFO] [stderr] warning: unused variable: `key`
[INFO] [stderr]    --> src/btree.rs:116:34
[INFO] [stderr]     |
[INFO] [stderr] 116 |     pub fn key_duplicated(&self, key: Key) -> bool {
[INFO] [stderr]     |                                  ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]   --> src/table.rs:32:24
[INFO] [stderr]    |
[INFO] [stderr] 32 |     pub fn table_start(&mut self) -> Cursor {
[INFO] [stderr]    |                        ^^^^^^^^^     ------ the lifetime gets resolved as `'_`
[INFO] [stderr]    |                        |
[INFO] [stderr]    |                        this lifetime flows to the output
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stderr]    |
[INFO] [stderr] 32 |     pub fn table_start(&mut self) -> Cursor<'_> {
[INFO] [stderr]    |                                            ++++
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]   --> src/table.rs:39:22
[INFO] [stderr]    |
[INFO] [stderr] 39 |     pub fn table_end(&mut self) -> Cursor {
[INFO] [stderr]    |                      ^^^^^^^^^     ------ the lifetime gets resolved as `'_`
[INFO] [stderr]    |                      |
[INFO] [stderr]    |                      this lifetime flows to the output
[INFO] [stderr]    |
[INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stderr]    |
[INFO] [stderr] 39 |     pub fn table_end(&mut self) -> Cursor<'_> {
[INFO] [stderr]    |                                          ++++
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]   --> src/table.rs:46:23
[INFO] [stderr]    |
[INFO] [stderr] 46 |     pub fn table_find(&mut self, key: u32) -> Cursor {
[INFO] [stderr]    |                       ^^^^^^^^^               ------ the lifetime gets resolved as `'_`
[INFO] [stderr]    |                       |
[INFO] [stderr]    |                       this lifetime flows to the output
[INFO] [stderr]    |
[INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stderr]    |
[INFO] [stderr] 46 |     pub fn table_find(&mut self, key: u32) -> Cursor<'_> {
[INFO] [stderr]    |                                                     ++++
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]   --> src/table.rs:57:27
[INFO] [stderr]    |
[INFO] [stderr] 57 |     pub fn leaf_node_find(&mut self, page_num: usize, key: u32) -> Cursor {
[INFO] [stderr]    |                           ^^^^^^^^^                                ------ the lifetime gets resolved as `'_`
[INFO] [stderr]    |                           |
[INFO] [stderr]    |                           this lifetime flows to the output
[INFO] [stderr]    |
[INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stderr]    |
[INFO] [stderr] 57 |     pub fn leaf_node_find(&mut self, page_num: usize, key: u32) -> Cursor<'_> {
[INFO] [stderr]    |                                                                          ++++
[INFO] [stderr] 
[INFO] [stderr] warning: `db_tutorial` (lib) generated 5 warnings
[INFO] [stderr] warning: method `table_end` is never used
[INFO] [stderr]   --> src/table.rs:39:12
[INFO] [stderr]    |
[INFO] [stderr] 9  | impl Table {
[INFO] [stderr]    | ---------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 39 |     pub fn table_end(&mut self) -> Cursor {
[INFO] [stderr]    |            ^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `db_tutorial` (bin "db_tutorial" test) generated 6 warnings (5 duplicates)
[INFO] [stderr] warning: `db_tutorial` (lib test) generated 5 warnings (5 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.02s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/db_tutorial-bea14fbe282f509d)
[INFO] [stdout] 
[INFO] [stdout] running 11 tests
[INFO] [stdout] test btree::tests::test_serialize_and_deserialize ... ok
[INFO] [stdout] test row::tests::test_serialize_length ... ok
[INFO] [stdout] test row::tests::test_serialize_row ... ok
[INFO] [stdout] test statement::tests::test_insert_fails_with_too_long_string ... ok
[INFO] [stdout] test statement::tests::test_persistence ... ignored
[INFO] [stdout] test statement::tests::test_insert_should_sort_keys ... FAILED
[INFO] [stdout] test statement::tests::test_insert_then_select ... FAILED
[INFO] [stdout] test statement::tests::test_insert_with_max_input_length ... FAILED
[INFO] [stdout] test statement::tests::test_reject_duplicate_key ... FAILED
[INFO] [stdout] test statement::tests::test_table_is_full ... FAILED
[INFO] [stdout] test btree::tests::test_serialize_to_page ... ok
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stderr] error: test failed, to rerun pass `--lib`
[INFO] [stdout] 
[INFO] [stdout] ---- statement::tests::test_insert_should_sort_keys stdout ----
[INFO] [stdout] Error: Os { code: 30, kind: ReadOnlyFilesystem, message: "Read-only file system" }
[INFO] [stdout] 
[INFO] [stdout] ---- statement::tests::test_insert_then_select stdout ----
[INFO] [stdout] Error: Os { code: 30, kind: ReadOnlyFilesystem, message: "Read-only file system" }
[INFO] [stdout] 
[INFO] [stdout] ---- statement::tests::test_insert_with_max_input_length stdout ----
[INFO] [stdout] Error: Os { code: 30, kind: ReadOnlyFilesystem, message: "Read-only file system" }
[INFO] [stdout] 
[INFO] [stdout] ---- statement::tests::test_reject_duplicate_key stdout ----
[INFO] [stdout] Error: Os { code: 30, kind: ReadOnlyFilesystem, message: "Read-only file system" }
[INFO] [stdout] 
[INFO] [stdout] ---- statement::tests::test_table_is_full stdout ----
[INFO] [stdout] Error: Os { code: 30, kind: ReadOnlyFilesystem, message: "Read-only file system" }
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     statement::tests::test_insert_should_sort_keys
[INFO] [stdout]     statement::tests::test_insert_then_select
[INFO] [stdout]     statement::tests::test_insert_with_max_input_length
[INFO] [stdout]     statement::tests::test_reject_duplicate_key
[INFO] [stdout]     statement::tests::test_table_is_full
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 5 passed; 5 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "ad6cb818521aa0ad643adc99d0093250ecc60ee6dade0effe2e790db2eab769d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ad6cb818521aa0ad643adc99d0093250ecc60ee6dade0effe2e790db2eab769d", kill_on_drop: false }`
[INFO] [stdout] ad6cb818521aa0ad643adc99d0093250ecc60ee6dade0effe2e790db2eab769d
