[INFO] cloning repository https://github.com/yjcyxky/biominer-indexd [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/yjcyxky/biominer-indexd" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fyjcyxky%2Fbiominer-indexd", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fyjcyxky%2Fbiominer-indexd'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 9658013788bf944d7368c657a452859a3a155fba [INFO] testing yjcyxky/biominer-indexd against 1.60.0 for beta-1.61-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fyjcyxky%2Fbiominer-indexd" "/workspace/builds/worker-13/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-13/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/yjcyxky/biominer-indexd on toolchain 1.60.0 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.60.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/yjcyxky/biominer-indexd [INFO] finished tweaking git repo https://github.com/yjcyxky/biominer-indexd [INFO] tweaked toml for git repo https://github.com/yjcyxky/biominer-indexd written to /workspace/builds/worker-13/source/Cargo.toml [INFO] crate git repo https://github.com/yjcyxky/biominer-indexd already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.60.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded rexpr v1.0.7 [INFO] [stderr] Downloaded py_sql v1.0.1 [INFO] [stderr] Downloaded poem-openapi-derive v1.3.21 [INFO] [stderr] Downloaded poem-derive v1.3.21 [INFO] [stderr] Downloaded rbatis-core v3.1.6 [INFO] [stderr] Downloaded rbatis-macro-driver v3.1.1 [INFO] [stderr] Downloaded rbatis_sql v3.0.17 [INFO] [stderr] Downloaded rbatis_sql_macro v3.0.10 [INFO] [stderr] Downloaded rbson v2.0.3 [INFO] [stderr] Downloaded poem v1.3.21 [INFO] [stderr] Downloaded poem-openapi v1.3.21 [INFO] [stderr] Downloaded html_parser v0.6.2 [INFO] [stderr] Downloaded rbatis v3.1.6 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-13/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-13/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:eaef2f80f755933c374d2ae5edccceec0c1312ceb8a4e0b6404e8ab76561e1e5" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] f1a466bd44a42f47c881c43a3760758f811746aabaddfb3427637abfe807333c [INFO] running `Command { std: "docker" "start" "-a" "f1a466bd44a42f47c881c43a3760758f811746aabaddfb3427637abfe807333c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "f1a466bd44a42f47c881c43a3760758f811746aabaddfb3427637abfe807333c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f1a466bd44a42f47c881c43a3760758f811746aabaddfb3427637abfe807333c", kill_on_drop: false }` [INFO] [stdout] f1a466bd44a42f47c881c43a3760758f811746aabaddfb3427637abfe807333c [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-13/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-13/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=warn" "-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:eaef2f80f755933c374d2ae5edccceec0c1312ceb8a4e0b6404e8ab76561e1e5" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 63c5a862f764691512402351c300ead630b102a0b53cf547f5709f3e6bd794be [INFO] running `Command { std: "docker" "start" "-a" "63c5a862f764691512402351c300ead630b102a0b53cf547f5709f3e6bd794be", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.37 [INFO] [stderr] Compiling syn v1.0.91 [INFO] [stderr] Compiling libc v0.2.122 [INFO] [stderr] Compiling serde v1.0.136 [INFO] [stderr] Compiling subtle v2.4.1 [INFO] [stderr] Compiling log v0.4.16 [INFO] [stderr] Compiling cpufeatures v0.2.2 [INFO] [stderr] Compiling futures-util v0.3.21 [INFO] [stderr] Compiling serde_json v1.0.79 [INFO] [stderr] Compiling slab v0.4.6 [INFO] [stderr] Compiling const-oid v0.6.2 [INFO] [stderr] Compiling base64ct v1.1.1 [INFO] [stderr] Compiling crossbeam-utils v0.8.8 [INFO] [stderr] Compiling parking_lot_core v0.9.2 [INFO] [stderr] Compiling rust_decimal v1.23.1 [INFO] [stderr] Compiling byteorder v1.4.3 [INFO] [stderr] Compiling encoding_rs v0.8.31 [INFO] [stderr] Compiling crossbeam-queue v0.3.5 [INFO] [stderr] Compiling time-macros v0.2.4 [INFO] [stderr] Compiling unicode_categories v0.1.1 [INFO] [stderr] Compiling crc-catalog v1.1.1 [INFO] [stderr] Compiling num_threads v0.1.5 [INFO] [stderr] Compiling whoami v1.2.1 [INFO] [stderr] Compiling anyhow v1.0.56 [INFO] [stderr] Compiling arc-swap v0.4.8 [INFO] [stderr] Compiling num-integer v0.1.44 [INFO] [stderr] Compiling indexmap v1.8.1 [INFO] [stderr] Compiling lock_api v0.4.7 [INFO] [stderr] Compiling standback v0.2.17 [INFO] [stderr] Compiling num-iter v0.1.42 [INFO] [stderr] Compiling autocfg v0.1.8 [INFO] [stderr] Compiling num-bigint v0.3.3 [INFO] [stderr] Compiling time v0.2.27 [INFO] [stderr] Compiling cookie v0.16.0 [INFO] [stderr] Compiling multer v2.0.2 [INFO] [stderr] Compiling ring v0.16.20 [INFO] [stderr] Compiling pem-rfc7468 v0.2.4 [INFO] [stderr] Compiling tracing-core v0.1.24 [INFO] [stderr] Compiling crc v2.1.0 [INFO] [stderr] Compiling headers-core v0.2.0 [INFO] [stderr] Compiling num-bigint-dig v0.7.0 [INFO] [stderr] Compiling digest v0.9.0 [INFO] [stderr] Compiling block-buffer v0.9.0 [INFO] [stderr] Compiling universal-hash v0.4.1 [INFO] [stderr] Compiling cipher v0.3.0 [INFO] [stderr] Compiling aead v0.4.3 [INFO] [stderr] Compiling crypto-mac v0.11.1 [INFO] [stderr] Compiling atoi v0.4.0 [INFO] [stderr] Compiling ordered-float v2.10.0 [INFO] [stderr] Compiling digest v0.10.3 [INFO] [stderr] Compiling Inflector v0.11.4 [INFO] [stderr] Compiling polyval v0.5.3 [INFO] [stderr] Compiling sha-1 v0.9.8 [INFO] [stderr] Compiling md-5 v0.9.1 [INFO] [stderr] Compiling sha2 v0.9.9 [INFO] [stderr] Compiling aes v0.7.5 [INFO] [stderr] Compiling ctr v0.8.0 [INFO] [stderr] Compiling hmac v0.11.0 [INFO] [stderr] Compiling quote v1.0.17 [INFO] [stderr] Compiling hmac v0.12.1 [INFO] [stderr] Compiling sha-1 v0.10.0 [INFO] [stderr] Compiling sha2 v0.10.2 [INFO] [stderr] Compiling ghash v0.4.4 [INFO] [stderr] Compiling getrandom v0.2.6 [INFO] [stderr] Compiling num_cpus v1.13.1 [INFO] [stderr] Compiling signal-hook-registry v1.4.0 [INFO] [stderr] Compiling socket2 v0.4.4 [INFO] [stderr] Compiling time v0.1.43 [INFO] [stderr] Compiling parking_lot_core v0.8.5 [INFO] [stderr] Compiling dirs-sys v0.3.7 [INFO] [stderr] Compiling tempfile v3.3.0 [INFO] [stderr] Compiling thread-id v3.3.0 [INFO] [stderr] Compiling atty v0.2.14 [INFO] [stderr] Compiling hkdf v0.12.3 [INFO] [stderr] Compiling rand_core v0.6.3 [INFO] [stderr] Compiling ahash v0.7.6 [INFO] [stderr] Compiling aes-gcm v0.9.4 [INFO] [stderr] Compiling headers v0.3.7 [INFO] [stderr] Compiling dashmap v4.0.2 [INFO] [stderr] Compiling dirs v4.0.0 [INFO] [stderr] Compiling time v0.3.9 [INFO] [stderr] Compiling parking_lot v0.11.2 [INFO] [stderr] Compiling proc-macro-error-attr v1.0.4 [INFO] [stderr] Compiling clap v2.34.0 [INFO] [stderr] Compiling parking_lot v0.12.0 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling crypto-bigint v0.2.11 [INFO] [stderr] Compiling hashbrown v0.11.2 [INFO] [stderr] Compiling futures-intrusive v0.4.0 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Compiling hashlink v0.7.0 [INFO] [stderr] Compiling der v0.4.5 [INFO] [stderr] Compiling spki v0.4.1 [INFO] [stderr] Compiling webpki v0.21.4 [INFO] [stderr] Compiling sct v0.6.1 [INFO] [stderr] Compiling webpki-roots v0.21.1 [INFO] [stderr] Compiling synstructure v0.12.6 [INFO] [stderr] Compiling proc-macro-error v1.0.4 [INFO] [stderr] Compiling pest_generator v2.1.3 [INFO] [stderr] Compiling darling_core v0.13.4 [INFO] [stderr] Compiling serde_derive v1.0.136 [INFO] [stderr] Compiling thiserror-impl v1.0.30 [INFO] [stderr] Compiling tokio-macros v1.7.0 [INFO] [stderr] Compiling futures-macro v0.3.21 [INFO] [stderr] Compiling zeroize_derive v1.3.2 [INFO] [stderr] Compiling structopt-derive v0.4.18 [INFO] [stderr] Compiling tracing-attributes v0.1.20 [INFO] [stderr] Compiling pest_derive v2.1.0 [INFO] [stderr] Compiling async-trait v0.1.53 [INFO] [stderr] Compiling time-macros-impl v0.1.2 [INFO] [stderr] Compiling derivative v2.2.0 [INFO] [stderr] Compiling derive_more v0.99.17 [INFO] [stderr] Compiling darling_macro v0.13.4 [INFO] [stderr] Compiling zeroize v1.4.3 [INFO] [stderr] Compiling pkcs1 v0.2.4 [INFO] [stderr] Compiling time-macros v0.1.1 [INFO] [stderr] Compiling pkcs8 v0.7.6 [INFO] [stderr] Compiling structopt v0.3.26 [INFO] [stderr] Compiling thiserror v1.0.30 [INFO] [stderr] Compiling tracing v0.1.32 [INFO] [stderr] Compiling darling v0.13.4 [INFO] [stderr] Compiling rsa v0.5.0 [INFO] [stderr] Compiling futures-executor v0.3.21 [INFO] [stderr] Compiling futures v0.3.21 [INFO] [stderr] Compiling chrono v0.4.19 [INFO] [stderr] Compiling either v1.6.1 [INFO] [stderr] Compiling uuid v0.8.2 [INFO] [stderr] Compiling serde_bytes v0.11.5 [INFO] [stderr] Compiling bit-vec v0.6.3 [INFO] [stderr] Compiling bigdecimal v0.2.2 [INFO] [stderr] Compiling serde_urlencoded v0.7.1 [INFO] [stderr] Compiling ipnetwork v0.17.0 [INFO] [stderr] Compiling serde_yaml v0.8.23 [INFO] [stderr] Compiling serde-value v0.7.0 [INFO] [stderr] Compiling toml v0.5.8 [INFO] [stderr] Compiling itertools v0.10.3 [INFO] [stderr] Compiling mio v0.8.2 [INFO] [stderr] Compiling rustls v0.19.1 [INFO] [stderr] Compiling want v0.3.0 [INFO] [stderr] Compiling tokio v1.17.0 [INFO] [stderr] Compiling html_parser v0.6.2 [INFO] [stderr] Compiling rbson v2.0.3 [INFO] [stderr] Compiling rexpr v1.0.7 [INFO] [stderr] Compiling log4rs v1.0.0 [INFO] [stderr] Compiling proc-macro-crate v1.1.3 [INFO] [stderr] Compiling py_sql v1.0.1 [INFO] [stderr] Compiling poem-derive v1.3.21 [INFO] [stderr] Compiling poem-openapi-derive v1.3.21 [INFO] [stderr] Compiling sqlformat v0.1.8 [INFO] [stderr] Compiling rbatis_sql_macro v3.0.10 [INFO] [stderr] Compiling rbatis-macro-driver v3.1.1 [INFO] [stderr] Compiling rbatis_sql v3.0.17 [INFO] [stderr] Compiling tokio-stream v0.1.8 [INFO] [stderr] Compiling tokio-rustls v0.22.0 [INFO] [stderr] Compiling tokio-util v0.7.1 [INFO] [stderr] Compiling sqlx-rt v0.5.11 [INFO] [stderr] Compiling sqlx-core v0.5.11 [INFO] [stderr] Compiling h2 v0.3.13 [INFO] [stderr] Compiling hyper v0.14.18 [INFO] [stderr] Compiling poem v1.3.21 [INFO] [stderr] Compiling rbatis-core v3.1.6 [INFO] [stderr] Compiling rbatis v3.1.6 [INFO] [stderr] Compiling poem-openapi v1.3.21 [INFO] [stderr] Compiling biominer-indexd v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] ............gen impl CRUDTable: [INFO] [stdout] #[derive(Serialize, Deserialize, Debug, Eq, PartialEq, Clone, Object)] pub [INFO] [stdout] struct URL [INFO] [stdout] { [INFO] [stdout] pub id : u64, pub url : String, pub created_at : i64, pub status : String, [INFO] [stdout] pub uploader : String, [INFO] [stdout] } impl rbatis :: crud :: CRUDTable for URL [INFO] [stdout] { [INFO] [stdout] fn get(& self, column : & str) -> rbson :: Bson [INFO] [stdout] { [INFO] [stdout] return match column [INFO] [stdout] { [INFO] [stdout] "id" => [INFO] [stdout] { return rbson :: to_bson(& self.id).unwrap_or_default() ; } "url" [INFO] [stdout] => { return rbson :: to_bson(& self.url).unwrap_or_default() ; } [INFO] [stdout] "created_at" => [INFO] [stdout] { [INFO] [stdout] return rbson :: to_bson(& self.created_at).unwrap_or_default() [INFO] [stdout] ; [INFO] [stdout] } "status" => [INFO] [stdout] { return rbson :: to_bson(& self.status).unwrap_or_default() ; } [INFO] [stdout] "uploader" => [INFO] [stdout] { return rbson :: to_bson(& self.uploader).unwrap_or_default() ; } [INFO] [stdout] _ => { rbson :: Bson :: Null } [INFO] [stdout] } [INFO] [stdout] } fn table_name() -> String { "biominer_indexd_url".to_string() } fn [INFO] [stdout] table_columns() -> String [INFO] [stdout] { "id,url,created_at,status,uploader".to_string() } fn [INFO] [stdout] formats(driver_type : & rbatis :: core :: db :: DriverType) -> std :: [INFO] [stdout] collections :: HashMap < String, String > [INFO] [stdout] { [INFO] [stdout] let mut m : std :: collections :: HashMap < String, String > = std :: [INFO] [stdout] collections :: HashMap :: new() ; match driver_type [INFO] [stdout] { [INFO] [stdout] rbatis :: core :: db :: DriverType :: Mysql => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: Postgres => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: Sqlite => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: Mssql => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: None => { return m ; }, [INFO] [stdout] } [INFO] [stdout] } [INFO] [stdout] } [INFO] [stdout] ............gen impl CRUDTable end............ [INFO] [stdout] ............gen impl CRUDTable: [INFO] [stdout] #[derive(Serialize, Deserialize, Debug, Eq, PartialEq, Clone, Object)] pub [INFO] [stdout] struct Hash [INFO] [stdout] { [INFO] [stdout] #[oai(read_only)] pub id : u64, #[oai(validator(max_length = 16))] pub [INFO] [stdout] hash_type : String, #[oai(validator(max_length = 128))] pub hash : String, [INFO] [stdout] } impl rbatis :: crud :: CRUDTable for Hash [INFO] [stdout] { [INFO] [stdout] fn get(& self, column : & str) -> rbson :: Bson [INFO] [stdout] { [INFO] [stdout] return match column [INFO] [stdout] { [INFO] [stdout] "id" => [INFO] [stdout] { return rbson :: to_bson(& self.id).unwrap_or_default() ; } [INFO] [stdout] "hash_type" => [INFO] [stdout] { [INFO] [stdout] return rbson :: to_bson(& self.hash_type).unwrap_or_default() [INFO] [stdout] ; [INFO] [stdout] } "hash" => [INFO] [stdout] { return rbson :: to_bson(& self.hash).unwrap_or_default() ; } _ [INFO] [stdout] => { rbson :: Bson :: Null } [INFO] [stdout] } [INFO] [stdout] } fn table_name() -> String { "biominer_indexd_hash".to_string() } fn [INFO] [stdout] table_columns() -> String { "id,hash_type,hash".to_string() } fn [INFO] [stdout] formats(driver_type : & rbatis :: core :: db :: DriverType) -> std :: [INFO] [stdout] collections :: HashMap < String, String > [INFO] [stdout] { [INFO] [stdout] let mut m : std :: collections :: HashMap < String, String > = std :: [INFO] [stdout] collections :: HashMap :: new() ; match driver_type [INFO] [stdout] { [INFO] [stdout] rbatis :: core :: db :: DriverType :: Mysql => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: Postgres => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: Sqlite => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: Mssql => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: None => { return m ; }, [INFO] [stdout] } [INFO] [stdout] } [INFO] [stdout] } [INFO] [stdout] ............gen impl CRUDTable end............ [INFO] [stdout] ............gen impl CRUDTable: [INFO] [stdout] #[derive(Serialize, Deserialize, Debug, Eq, PartialEq, Clone, Object)] pub [INFO] [stdout] struct Alias [INFO] [stdout] { [INFO] [stdout] #[oai(read_only)] pub id : u64, #[oai(validator(max_length = 255))] pub [INFO] [stdout] name : String, [INFO] [stdout] } impl rbatis :: crud :: CRUDTable for Alias [INFO] [stdout] { [INFO] [stdout] fn get(& self, column : & str) -> rbson :: Bson [INFO] [stdout] { [INFO] [stdout] return match column [INFO] [stdout] { [INFO] [stdout] "id" => [INFO] [stdout] { return rbson :: to_bson(& self.id).unwrap_or_default() ; } [INFO] [stdout] "name" => [INFO] [stdout] { return rbson :: to_bson(& self.name).unwrap_or_default() ; } _ [INFO] [stdout] => { rbson :: Bson :: Null } [INFO] [stdout] } [INFO] [stdout] } fn table_name() -> String { "biominer_indexd_alias".to_string() } fn [INFO] [stdout] table_columns() -> String { "id,name".to_string() } fn [INFO] [stdout] formats(driver_type : & rbatis :: core :: db :: DriverType) -> std :: [INFO] [stdout] collections :: HashMap < String, String > [INFO] [stdout] { [INFO] [stdout] let mut m : std :: collections :: HashMap < String, String > = std :: [INFO] [stdout] collections :: HashMap :: new() ; match driver_type [INFO] [stdout] { [INFO] [stdout] rbatis :: core :: db :: DriverType :: Mysql => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: Postgres => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: Sqlite => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: Mssql => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: None => { return m ; }, [INFO] [stdout] } [INFO] [stdout] } [INFO] [stdout] } [INFO] [stdout] ............gen impl CRUDTable end............ [INFO] [stdout] ............gen impl CRUDTable: [INFO] [stdout] #[derive(Serialize, Deserialize, Debug, Eq, PartialEq, Clone, Object)] pub [INFO] [stdout] struct Config [INFO] [stdout] { [INFO] [stdout] #[oai(read_only)] pub id : u64, [INFO] [stdout] #[oai(validator(max_length = 16, pattern = "^[0-9a-z-]{16}$"))] pub [INFO] [stdout] registry_id : String, [INFO] [stdout] } impl rbatis :: crud :: CRUDTable for Config [INFO] [stdout] { [INFO] [stdout] fn get(& self, column : & str) -> rbson :: Bson [INFO] [stdout] { [INFO] [stdout] return match column [INFO] [stdout] { [INFO] [stdout] "id" => [INFO] [stdout] { return rbson :: to_bson(& self.id).unwrap_or_default() ; } [INFO] [stdout] "registry_id" => [INFO] [stdout] { [INFO] [stdout] return rbson :: [INFO] [stdout] to_bson(& self.registry_id).unwrap_or_default() ; [INFO] [stdout] } _ => { rbson :: Bson :: Null } [INFO] [stdout] } [INFO] [stdout] } fn table_name() -> String { "biominer_indexd_config".to_string() } fn [INFO] [stdout] table_columns() -> String { "id,registry_id".to_string() } fn [INFO] [stdout] formats(driver_type : & rbatis :: core :: db :: DriverType) -> std :: [INFO] [stdout] collections :: HashMap < String, String > [INFO] [stdout] { [INFO] [stdout] let mut m : std :: collections :: HashMap < String, String > = std :: [INFO] [stdout] collections :: HashMap :: new() ; match driver_type [INFO] [stdout] { [INFO] [stdout] rbatis :: core :: db :: DriverType :: Mysql => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: Postgres => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: Sqlite => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: Mssql => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: None => { return m ; }, [INFO] [stdout] } [INFO] [stdout] } [INFO] [stdout] } [INFO] [stdout] ............gen impl CRUDTable end............ [INFO] [stdout] ............gen impl CRUDTable: [INFO] [stdout] #[derive(Serialize, Deserialize, Debug, Eq, PartialEq, Clone, Object)] pub [INFO] [stdout] struct File [INFO] [stdout] { [INFO] [stdout] pub guid : String, pub filename : String, pub size : u64, pub created_at : [INFO] [stdout] i64, pub updated_at : i64, pub status : String, pub baseid : String, pub [INFO] [stdout] rev : String, pub version : usize, pub uploader : String, pub urls : [INFO] [stdout] Option < Vec < URL >>, pub hashes : Option < Vec < Hash >>, pub aliases : [INFO] [stdout] Option < Vec < Alias >>, [INFO] [stdout] } impl rbatis :: crud :: CRUDTable for File [INFO] [stdout] { [INFO] [stdout] fn get(& self, column : & str) -> rbson :: Bson [INFO] [stdout] { [INFO] [stdout] return match column [INFO] [stdout] { [INFO] [stdout] "guid" => [INFO] [stdout] { return rbson :: to_bson(& self.guid).unwrap_or_default() ; } [INFO] [stdout] "filename" => [INFO] [stdout] { return rbson :: to_bson(& self.filename).unwrap_or_default() ; } [INFO] [stdout] "size" => [INFO] [stdout] { return rbson :: to_bson(& self.size).unwrap_or_default() ; } [INFO] [stdout] "created_at" => [INFO] [stdout] { [INFO] [stdout] return rbson :: to_bson(& self.created_at).unwrap_or_default() [INFO] [stdout] ; [INFO] [stdout] } "updated_at" => [INFO] [stdout] { [INFO] [stdout] return rbson :: to_bson(& self.updated_at).unwrap_or_default() [INFO] [stdout] ; [INFO] [stdout] } "status" => [INFO] [stdout] { return rbson :: to_bson(& self.status).unwrap_or_default() ; } [INFO] [stdout] "baseid" => [INFO] [stdout] { return rbson :: to_bson(& self.baseid).unwrap_or_default() ; } [INFO] [stdout] "rev" => [INFO] [stdout] { return rbson :: to_bson(& self.rev).unwrap_or_default() ; } [INFO] [stdout] "version" => [INFO] [stdout] { return rbson :: to_bson(& self.version).unwrap_or_default() ; } [INFO] [stdout] "uploader" => [INFO] [stdout] { return rbson :: to_bson(& self.uploader).unwrap_or_default() ; } [INFO] [stdout] "urls" => [INFO] [stdout] { return rbson :: to_bson(& self.urls).unwrap_or_default() ; } [INFO] [stdout] "hashes" => [INFO] [stdout] { return rbson :: to_bson(& self.hashes).unwrap_or_default() ; } [INFO] [stdout] "aliases" => [INFO] [stdout] { return rbson :: to_bson(& self.aliases).unwrap_or_default() ; } [INFO] [stdout] _ => { rbson :: Bson :: Null } [INFO] [stdout] } [INFO] [stdout] } fn table_name() -> String { "biominer_indexd_file".to_string() } fn [INFO] [stdout] table_columns() -> String [INFO] [stdout] { [INFO] [stdout] "guid,filename,size,created_at,updated_at,status,baseid,rev,version,uploader,urls,hashes,aliases".to_string() [INFO] [stdout] } fn formats(driver_type : & rbatis :: core :: db :: DriverType) -> std :: [INFO] [stdout] collections :: HashMap < String, String > [INFO] [stdout] { [INFO] [stdout] let mut m : std :: collections :: HashMap < String, String > = std :: [INFO] [stdout] collections :: HashMap :: new() ; match driver_type [INFO] [stdout] { [INFO] [stdout] rbatis :: core :: db :: DriverType :: Mysql => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: Postgres => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: Sqlite => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: Mssql => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: None => { return m ; }, [INFO] [stdout] } [INFO] [stdout] } [INFO] [stdout] } [INFO] [stdout] ............gen impl CRUDTable end............ [INFO] [stdout] gen return [INFO] [stdout] ............gen macro html_sql : [INFO] [stdout] pub async fn [INFO] [stdout] query_files(rb : & mut RbatisExecutor < '_, '_ >, page_req : & PageRequest, [INFO] [stdout] guid : & str, filename : & str, baseid : & str, status : & str, uploader : & [INFO] [stdout] str, hash : & str, alias : & str, url : & str, contain_alias : & usize, [INFO] [stdout] contain_url : & usize,) -> rbatis :: core :: Result < Page < File > > [INFO] [stdout] { [INFO] [stdout] let mut rb_arg_map = rbson :: Document :: new() ; [INFO] [stdout] rb_arg_map.insert("page_req".to_string(), rbson :: [INFO] [stdout] to_bson(page_req).unwrap_or_default()) ; [INFO] [stdout] rb_arg_map.insert("guid".to_string(), rbson :: [INFO] [stdout] to_bson(guid).unwrap_or_default()) ; [INFO] [stdout] rb_arg_map.insert("filename".to_string(), rbson :: [INFO] [stdout] to_bson(filename).unwrap_or_default()) ; [INFO] [stdout] rb_arg_map.insert("baseid".to_string(), rbson :: [INFO] [stdout] to_bson(baseid).unwrap_or_default()) ; [INFO] [stdout] rb_arg_map.insert("status".to_string(), rbson :: [INFO] [stdout] to_bson(status).unwrap_or_default()) ; [INFO] [stdout] rb_arg_map.insert("uploader".to_string(), rbson :: [INFO] [stdout] to_bson(uploader).unwrap_or_default()) ; [INFO] [stdout] rb_arg_map.insert("hash".to_string(), rbson :: [INFO] [stdout] to_bson(hash).unwrap_or_default()) ; [INFO] [stdout] rb_arg_map.insert("alias".to_string(), rbson :: [INFO] [stdout] to_bson(alias).unwrap_or_default()) ; [INFO] [stdout] rb_arg_map.insert("url".to_string(), rbson :: [INFO] [stdout] to_bson(url).unwrap_or_default()) ; [INFO] [stdout] rb_arg_map.insert("contain_alias".to_string(), rbson :: [INFO] [stdout] to_bson(contain_alias).unwrap_or_default()) ; [INFO] [stdout] rb_arg_map.insert("contain_url".to_string(), rbson :: [INFO] [stdout] to_bson(contain_url).unwrap_or_default()) ; {} use rbatis :: executor :: [INFO] [stdout] { RbatisRef } ; let driver_type = rb.get_rbatis().driver_type() ? ; use [INFO] [stdout] rbatis :: { rbatis_sql, AsSqlTag } ; let sql_tag = driver_type.sql_tag() ; [INFO] [stdout] #[rb_html("sql/query_files.xml")] pub fn [INFO] [stdout] query_files(arg : & rbson :: Bson, _tag : char) {} let(mut sql, rb_args) = [INFO] [stdout] query_files(& rbson :: Bson :: Document(rb_arg_map), sql_tag) ; [INFO] [stdout] driver_type.do_replace_tag(& mut sql) ; use rbatis :: crud :: [INFO] [stdout] { CRUD, CRUDMut } ; rb.fetch_page(& sql, rb_args, page_req).await [INFO] [stdout] } [INFO] [stdout] ............gen macro html_sql end............ [INFO] [stdout] try open file:sql/query_files.xml [INFO] [stdout] load html:[ [INFO] [stdout] { [INFO] [stdout] tag: "select", [INFO] [stdout] attributes: { [INFO] [stdout] "id": "query_files", [INFO] [stdout] }, [INFO] [stdout] childs: [ [INFO] [stdout] { [INFO] [stdout] data: "SELECT\n guid, filename, size, updated_at, baseid, rev, version,\n biominer_indexd_file.created_at as created_at,\n biominer_indexd_file.status as status,\n biominer_indexd_file.uploader as uploader,", [INFO] [stdout] }, [INFO] [stdout] { [INFO] [stdout] tag: "if", [INFO] [stdout] attributes: { [INFO] [stdout] "test": "contain_url != 0", [INFO] [stdout] }, [INFO] [stdout] childs: [ [INFO] [stdout] { [INFO] [stdout] data: "json_agg(DISTINCT biominer_indexd_url) as urls,", [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] { [INFO] [stdout] tag: "if", [INFO] [stdout] attributes: { [INFO] [stdout] "test": "contain_alias != 0", [INFO] [stdout] }, [INFO] [stdout] childs: [ [INFO] [stdout] { [INFO] [stdout] data: "json_agg(DISTINCT biominer_indexd_alias) as aliases,", [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] { [INFO] [stdout] data: "json_agg(DISTINCT biominer_indexd_hash) as hashes\n FROM\n biominer_indexd_file\n ${' '}", [INFO] [stdout] }, [INFO] [stdout] { [INFO] [stdout] tag: "if", [INFO] [stdout] attributes: { [INFO] [stdout] "test": "contain_url != 0", [INFO] [stdout] }, [INFO] [stdout] childs: [ [INFO] [stdout] { [INFO] [stdout] data: "JOIN biominer_indexd_url ON biominer_indexd_url.file = biominer_indexd_file.guid", [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] { [INFO] [stdout] tag: "if", [INFO] [stdout] attributes: { [INFO] [stdout] "test": "contain_alias != 0", [INFO] [stdout] }, [INFO] [stdout] childs: [ [INFO] [stdout] { [INFO] [stdout] data: "JOIN biominer_indexd_alias ON biominer_indexd_alias.file = biominer_indexd_file.guid", [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] { [INFO] [stdout] data: "JOIN biominer_indexd_hash ON biominer_indexd_hash.file = biominer_indexd_file.guid\n ${' '}", [INFO] [stdout] }, [INFO] [stdout] { [INFO] [stdout] tag: "where", [INFO] [stdout] childs: [ [INFO] [stdout] { [INFO] [stdout] tag: "if", [INFO] [stdout] attributes: { [INFO] [stdout] "test": "filename != null && filename != ''", [INFO] [stdout] }, [INFO] [stdout] childs: [ [INFO] [stdout] { [INFO] [stdout] data: "filename LIKE CONCAT('%', #{filename}, '%')", [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] { [INFO] [stdout] tag: "if", [INFO] [stdout] attributes: { [INFO] [stdout] "test": "guid != null && guid != ''", [INFO] [stdout] }, [INFO] [stdout] childs: [ [INFO] [stdout] { [INFO] [stdout] data: "and guid = #{guid}", [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] { [INFO] [stdout] tag: "if", [INFO] [stdout] attributes: { [INFO] [stdout] "test": "baseid != null && baseid != ''", [INFO] [stdout] }, [INFO] [stdout] childs: [ [INFO] [stdout] { [INFO] [stdout] data: "and baseid = #{baseid}", [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] { [INFO] [stdout] tag: "if", [INFO] [stdout] attributes: { [INFO] [stdout] "test": "status != null && status != ''", [INFO] [stdout] }, [INFO] [stdout] childs: [ [INFO] [stdout] { [INFO] [stdout] data: "and biominer_indexd_file.status = #{status}", [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] { [INFO] [stdout] tag: "if", [INFO] [stdout] attributes: { [INFO] [stdout] "test": "uploader != null && uploader != ''", [INFO] [stdout] }, [INFO] [stdout] childs: [ [INFO] [stdout] { [INFO] [stdout] data: "and biominer_indexd_file.uploader = #{uploader}", [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] { [INFO] [stdout] tag: "if", [INFO] [stdout] attributes: { [INFO] [stdout] "test": "hash != null && hash != ''", [INFO] [stdout] }, [INFO] [stdout] childs: [ [INFO] [stdout] { [INFO] [stdout] data: "and biominer_indexd_hash.hash = #{hash}", [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] { [INFO] [stdout] tag: "if", [INFO] [stdout] attributes: { [INFO] [stdout] "test": "contain_alias != 0 && alias != null && alias != ''", [INFO] [stdout] }, [INFO] [stdout] childs: [ [INFO] [stdout] { [INFO] [stdout] data: "and biominer_indexd_alias.name = #{alias}", [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] { [INFO] [stdout] tag: "if", [INFO] [stdout] attributes: { [INFO] [stdout] "test": "contain_url != 0 && url != null && url != ''", [INFO] [stdout] }, [INFO] [stdout] childs: [ [INFO] [stdout] { [INFO] [stdout] data: "and biominer_indexd_url.url = #{url}", [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] { [INFO] [stdout] data: "${' '}\n GROUP BY guid", [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ] [INFO] [stdout] ............gen macro xml: [INFO] [stdout] use rbatis_sql :: ops :: * ; pub fn [INFO] [stdout] query_files(arg : & rbson :: Bson, _tag : char) -> [INFO] [stdout] (String, Vec < rbson :: Bson >) [INFO] [stdout] { [INFO] [stdout] use rbatis_sql :: ops :: AsProxy ; let mut sql = String :: [INFO] [stdout] with_capacity(1000) ; let mut args = Vec :: with_capacity(20) ; [INFO] [stdout] sql.push_str("SELECT\n guid, filename, size, updated_at, baseid, rev, version,\n biominer_indexd_file.created_at as created_at,\n biominer_indexd_file.status as status,\n biominer_indexd_file.uploader as uploader,") [INFO] [stdout] ; let Y29udGFpbl91cmwgIT0gMA__ = [INFO] [stdout] { let result = { (arg.index("contain_url")).op_ne(& 0i64) } ; result } ; [INFO] [stdout] if Y29udGFpbl91cmwgIT0gMA__ [INFO] [stdout] { [INFO] [stdout] sql.push_str(" ") ; [INFO] [stdout] sql.push_str("json_agg(DISTINCT biominer_indexd_url) as urls,") ; [INFO] [stdout] sql.push_str(" ") ; [INFO] [stdout] } let Y29udGFpbl9hbGlhcyAhPSAw = [INFO] [stdout] { let result = { (arg.index("contain_alias")).op_ne(& 0i64) } ; result } ; [INFO] [stdout] if Y29udGFpbl9hbGlhcyAhPSAw [INFO] [stdout] { [INFO] [stdout] sql.push_str(" ") ; [INFO] [stdout] sql.push_str("json_agg(DISTINCT biominer_indexd_alias) as aliases,") ; [INFO] [stdout] sql.push_str(" ") ; [INFO] [stdout] } let c2VsZWN0OicgJw__ = { let result = { " " } ; result } ; [INFO] [stdout] sql.push_str("json_agg(DISTINCT biominer_indexd_hash) as hashes\n FROM\n biominer_indexd_file\n ${\' \'}".replacen("${\' \'}", [INFO] [stdout] & c2VsZWN0OicgJw__.as_sql(), 1).as_str()) ; let Y29udGFpbl91cmwgIT0gMA__ = [INFO] [stdout] { let result = { (arg.index("contain_url")).op_ne(& 0i64) } ; result } ; [INFO] [stdout] if Y29udGFpbl91cmwgIT0gMA__ [INFO] [stdout] { [INFO] [stdout] sql.push_str(" ") ; [INFO] [stdout] sql.push_str("JOIN biominer_indexd_url ON biominer_indexd_url.file = biominer_indexd_file.guid") [INFO] [stdout] ; sql.push_str(" ") ; [INFO] [stdout] } let Y29udGFpbl9hbGlhcyAhPSAw = [INFO] [stdout] { let result = { (arg.index("contain_alias")).op_ne(& 0i64) } ; result } ; [INFO] [stdout] if Y29udGFpbl9hbGlhcyAhPSAw [INFO] [stdout] { [INFO] [stdout] sql.push_str(" ") ; [INFO] [stdout] sql.push_str("JOIN biominer_indexd_alias ON biominer_indexd_alias.file = biominer_indexd_file.guid") [INFO] [stdout] ; sql.push_str(" ") ; [INFO] [stdout] } let c2VsZWN0OicgJw__ = { let result = { " " } ; result } ; [INFO] [stdout] sql.push_str("JOIN biominer_indexd_hash ON biominer_indexd_hash.file = biominer_indexd_file.guid\n ${\' \'}".replacen("${\' \'}", [INFO] [stdout] & c2VsZWN0OicgJw__.as_sql(), 1).as_str()) ; sql.push_str(" where ") ; [INFO] [stdout] sql.push_str(& [INFO] [stdout] { [INFO] [stdout] let mut sql = String :: new() ; let [INFO] [stdout] ZmlsZW5hbWUgIT0gbnVsbCAmJiBmaWxlbmFtZSAhPSAnJw__ = [INFO] [stdout] { [INFO] [stdout] let result = [INFO] [stdout] { [INFO] [stdout] bool :: [INFO] [stdout] op_from((arg.index("filename")).op_ne(& rbson :: Bson :: [INFO] [stdout] Null)) && bool :: op_from((arg.index("filename")).op_ne(& "")) [INFO] [stdout] } ; result [INFO] [stdout] } ; if ZmlsZW5hbWUgIT0gbnVsbCAmJiBmaWxlbmFtZSAhPSAnJw__ [INFO] [stdout] { [INFO] [stdout] sql.push_str(" ") ; let c2VsZWN0OndoZXJlOnRyaW06ZmlsZW5hbWU_ = [INFO] [stdout] { let result = { arg.index("filename") } ; result } ; [INFO] [stdout] args.push(rbson :: bson! (c2VsZWN0OndoZXJlOnRyaW06ZmlsZW5hbWU_)) ; [INFO] [stdout] sql.push_str("filename LIKE CONCAT(\'%\', ?, \'%\')") ; [INFO] [stdout] sql.push_str(" ") ; [INFO] [stdout] } let Z3VpZCAhPSBudWxsICYmIGd1aWQgIT0gJyc_ = [INFO] [stdout] { [INFO] [stdout] let result = [INFO] [stdout] { [INFO] [stdout] bool :: [INFO] [stdout] op_from((arg.index("guid")).op_ne(& rbson :: Bson :: Null)) && [INFO] [stdout] bool :: op_from((arg.index("guid")).op_ne(& "")) [INFO] [stdout] } ; result [INFO] [stdout] } ; if Z3VpZCAhPSBudWxsICYmIGd1aWQgIT0gJyc_ [INFO] [stdout] { [INFO] [stdout] sql.push_str(" ") ; let c2VsZWN0OndoZXJlOnRyaW06Z3VpZA__ = [INFO] [stdout] { let result = { arg.index("guid") } ; result } ; [INFO] [stdout] args.push(rbson :: bson! (c2VsZWN0OndoZXJlOnRyaW06Z3VpZA__)) ; [INFO] [stdout] sql.push_str("and guid = ?") ; sql.push_str(" ") ; [INFO] [stdout] } let YmFzZWlkICE9IG51bGwgJiYgYmFzZWlkICE9ICcn = [INFO] [stdout] { [INFO] [stdout] let result = [INFO] [stdout] { [INFO] [stdout] bool :: [INFO] [stdout] op_from((arg.index("baseid")).op_ne(& rbson :: Bson :: Null)) [INFO] [stdout] && bool :: op_from((arg.index("baseid")).op_ne(& "")) [INFO] [stdout] } ; result [INFO] [stdout] } ; if YmFzZWlkICE9IG51bGwgJiYgYmFzZWlkICE9ICcn [INFO] [stdout] { [INFO] [stdout] sql.push_str(" ") ; let c2VsZWN0OndoZXJlOnRyaW06YmFzZWlk = [INFO] [stdout] { let result = { arg.index("baseid") } ; result } ; [INFO] [stdout] args.push(rbson :: bson! (c2VsZWN0OndoZXJlOnRyaW06YmFzZWlk)) ; [INFO] [stdout] sql.push_str("and baseid = ?") ; sql.push_str(" ") ; [INFO] [stdout] } let c3RhdHVzICE9IG51bGwgJiYgc3RhdHVzICE9ICcn = [INFO] [stdout] { [INFO] [stdout] let result = [INFO] [stdout] { [INFO] [stdout] bool :: [INFO] [stdout] op_from((arg.index("status")).op_ne(& rbson :: Bson :: Null)) [INFO] [stdout] && bool :: op_from((arg.index("status")).op_ne(& "")) [INFO] [stdout] } ; result [INFO] [stdout] } ; if c3RhdHVzICE9IG51bGwgJiYgc3RhdHVzICE9ICcn [INFO] [stdout] { [INFO] [stdout] sql.push_str(" ") ; let c2VsZWN0OndoZXJlOnRyaW06c3RhdHVz = [INFO] [stdout] { let result = { arg.index("status") } ; result } ; [INFO] [stdout] args.push(rbson :: bson! (c2VsZWN0OndoZXJlOnRyaW06c3RhdHVz)) ; [INFO] [stdout] sql.push_str("and biominer_indexd_file.status = ?") ; [INFO] [stdout] sql.push_str(" ") ; [INFO] [stdout] } let dXBsb2FkZXIgIT0gbnVsbCAmJiB1cGxvYWRlciAhPSAnJw__ = [INFO] [stdout] { [INFO] [stdout] let result = [INFO] [stdout] { [INFO] [stdout] bool :: [INFO] [stdout] op_from((arg.index("uploader")).op_ne(& rbson :: Bson :: [INFO] [stdout] Null)) && bool :: op_from((arg.index("uploader")).op_ne(& "")) [INFO] [stdout] } ; result [INFO] [stdout] } ; if dXBsb2FkZXIgIT0gbnVsbCAmJiB1cGxvYWRlciAhPSAnJw__ [INFO] [stdout] { [INFO] [stdout] sql.push_str(" ") ; let c2VsZWN0OndoZXJlOnRyaW06dXBsb2FkZXI_ = [INFO] [stdout] { let result = { arg.index("uploader") } ; result } ; [INFO] [stdout] args.push(rbson :: bson! (c2VsZWN0OndoZXJlOnRyaW06dXBsb2FkZXI_)) ; [INFO] [stdout] sql.push_str("and biominer_indexd_file.uploader = ?") ; [INFO] [stdout] sql.push_str(" ") ; [INFO] [stdout] } let aGFzaCAhPSBudWxsICYmIGhhc2ggIT0gJyc_ = [INFO] [stdout] { [INFO] [stdout] let result = [INFO] [stdout] { [INFO] [stdout] bool :: [INFO] [stdout] op_from((arg.index("hash")).op_ne(& rbson :: Bson :: Null)) && [INFO] [stdout] bool :: op_from((arg.index("hash")).op_ne(& "")) [INFO] [stdout] } ; result [INFO] [stdout] } ; if aGFzaCAhPSBudWxsICYmIGhhc2ggIT0gJyc_ [INFO] [stdout] { [INFO] [stdout] sql.push_str(" ") ; let c2VsZWN0OndoZXJlOnRyaW06aGFzaA__ = [INFO] [stdout] { let result = { arg.index("hash") } ; result } ; [INFO] [stdout] args.push(rbson :: bson! (c2VsZWN0OndoZXJlOnRyaW06aGFzaA__)) ; [INFO] [stdout] sql.push_str("and biominer_indexd_hash.hash = ?") ; [INFO] [stdout] sql.push_str(" ") ; [INFO] [stdout] } let [INFO] [stdout] Y29udGFpbl9hbGlhcyAhPSAwICYmIGFsaWFzICE9IG51bGwgJiYgYWxpYXMgIT0gJyc_ = [INFO] [stdout] { [INFO] [stdout] let result = [INFO] [stdout] { [INFO] [stdout] bool :: [INFO] [stdout] op_from(bool :: [INFO] [stdout] op_from((arg.index("contain_alias")).op_ne(& 0i64)) && bool :: [INFO] [stdout] op_from((arg.index("alias")).op_ne(& rbson :: Bson :: Null))) [INFO] [stdout] && bool :: op_from((arg.index("alias")).op_ne(& "")) [INFO] [stdout] } ; result [INFO] [stdout] } ; if [INFO] [stdout] Y29udGFpbl9hbGlhcyAhPSAwICYmIGFsaWFzICE9IG51bGwgJiYgYWxpYXMgIT0gJyc_ [INFO] [stdout] { [INFO] [stdout] sql.push_str(" ") ; let c2VsZWN0OndoZXJlOnRyaW06YWxpYXM_ = [INFO] [stdout] { let result = { arg.index("alias") } ; result } ; [INFO] [stdout] args.push(rbson :: bson! (c2VsZWN0OndoZXJlOnRyaW06YWxpYXM_)) ; [INFO] [stdout] sql.push_str("and biominer_indexd_alias.name = ?") ; [INFO] [stdout] sql.push_str(" ") ; [INFO] [stdout] } let Y29udGFpbl91cmwgIT0gMCAmJiB1cmwgIT0gbnVsbCAmJiB1cmwgIT0gJyc_ = [INFO] [stdout] { [INFO] [stdout] let result = [INFO] [stdout] { [INFO] [stdout] bool :: [INFO] [stdout] op_from(bool :: [INFO] [stdout] op_from((arg.index("contain_url")).op_ne(& 0i64)) && bool :: [INFO] [stdout] op_from((arg.index("url")).op_ne(& rbson :: Bson :: Null))) && [INFO] [stdout] bool :: op_from((arg.index("url")).op_ne(& "")) [INFO] [stdout] } ; result [INFO] [stdout] } ; if Y29udGFpbl91cmwgIT0gMCAmJiB1cmwgIT0gbnVsbCAmJiB1cmwgIT0gJyc_ [INFO] [stdout] { [INFO] [stdout] sql.push_str(" ") ; let c2VsZWN0OndoZXJlOnRyaW06dXJs = [INFO] [stdout] { let result = { arg.index("url") } ; result } ; [INFO] [stdout] args.push(rbson :: bson! (c2VsZWN0OndoZXJlOnRyaW06dXJs)) ; [INFO] [stdout] sql.push_str("and biominer_indexd_url.url = ?") ; [INFO] [stdout] sql.push_str(" ") ; [INFO] [stdout] } sql = [INFO] [stdout] sql.trim_start_matches(" ").trim_start_matches("and ").trim_start_matches("or ").trim_end_matches(" ").trim_end_matches(" and").trim_end_matches(" or").to_string() [INFO] [stdout] ; sql [INFO] [stdout] }) ; sql.push_str(" ") ; sql = sql.trim_end().to_string() ; sql = [INFO] [stdout] sql.trim_end_matches(" where").to_string() ; let c2VsZWN0OicgJw__ = [INFO] [stdout] { let result = { " " } ; result } ; [INFO] [stdout] sql.push_str("${\' \'}\n GROUP BY guid".replacen("${\' \'}", & [INFO] [stdout] c2VsZWN0OicgJw__.as_sql(), 1).as_str()) ; rbatis_sql :: sql_index! [INFO] [stdout] (sql, _tag) ; return(sql, args) ; [INFO] [stdout] } fn _include_query_files() [INFO] [stdout] { let _ = include_str! ("/opt/rustwide/workdir/sql/query_files.xml") ; } [INFO] [stdout] ............gen macro xml end............ [INFO] [stdout] warning: unused variable: `f` [INFO] [stdout] --> src/database.rs:210:9 [INFO] [stdout] | [INFO] [stdout] 210 | let f = match tx [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_f` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `h` [INFO] [stdout] --> src/database.rs:233:9 [INFO] [stdout] | [INFO] [stdout] 233 | let h = match tx [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_h` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `NotFound` [INFO] [stdout] --> src/api/files.rs:20:3 [INFO] [stdout] | [INFO] [stdout] 20 | NotFound(PlainText), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/database.rs:190:9 [INFO] [stdout] | [INFO] [stdout] 190 | tx1.rollback().await; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 4 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `#[macro_use]` import [INFO] [stdout] --> src/main.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 | #[macro_use] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `#[macro_use]` import [INFO] [stdout] --> src/main.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | #[macro_use] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `time::Duration` [INFO] [stdout] --> src/main.rs:21:19 [INFO] [stdout] | [INFO] [stdout] 21 | use tokio::{self, time::Duration}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/main.rs:46:9 [INFO] [stdout] | [INFO] [stdout] 46 | e.description() [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 4 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 6m 11s [INFO] running `Command { std: "docker" "inspect" "63c5a862f764691512402351c300ead630b102a0b53cf547f5709f3e6bd794be", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "63c5a862f764691512402351c300ead630b102a0b53cf547f5709f3e6bd794be", kill_on_drop: false }` [INFO] [stdout] 63c5a862f764691512402351c300ead630b102a0b53cf547f5709f3e6bd794be [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-13/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-13/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=warn" "-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:eaef2f80f755933c374d2ae5edccceec0c1312ceb8a4e0b6404e8ab76561e1e5" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] eac11c9799e84de88ff30f9d05ef584420634f53aeb9a6c95a4b642df9bbb7ad [INFO] running `Command { std: "docker" "start" "-a" "eac11c9799e84de88ff30f9d05ef584420634f53aeb9a6c95a4b642df9bbb7ad", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stdout] warning: unused variable: `f` [INFO] [stdout] --> src/database.rs:210:9 [INFO] [stdout] | [INFO] [stdout] 210 | let f = match tx [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_f` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling biominer-indexd v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused variable: `h` [INFO] [stdout] --> src/database.rs:233:9 [INFO] [stdout] | [INFO] [stdout] 233 | let h = match tx [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_h` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `NotFound` [INFO] [stdout] --> src/api/files.rs:20:3 [INFO] [stdout] | [INFO] [stdout] 20 | NotFound(PlainText), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/database.rs:190:9 [INFO] [stdout] | [INFO] [stdout] 190 | tx1.rollback().await; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 4 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `#[macro_use]` import [INFO] [stdout] --> src/main.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 | #[macro_use] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `#[macro_use]` import [INFO] [stdout] --> src/main.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | #[macro_use] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `time::Duration` [INFO] [stdout] --> src/main.rs:21:19 [INFO] [stdout] | [INFO] [stdout] 21 | use tokio::{self, time::Duration}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] ............gen impl CRUDTable: [INFO] [stdout] #[derive(Serialize, Deserialize, Debug, Eq, PartialEq, Clone, Object)] pub [INFO] [stdout] struct URL [INFO] [stdout] { [INFO] [stdout] pub id : u64, pub url : String, pub created_at : i64, pub status : String, [INFO] [stdout] pub uploader : String, [INFO] [stdout] } impl rbatis :: crud :: CRUDTable for URL [INFO] [stdout] { [INFO] [stdout] fn get(& self, column : & str) -> rbson :: Bson [INFO] [stdout] { [INFO] [stdout] return match column [INFO] [stdout] { [INFO] [stdout] "id" => [INFO] [stdout] { return rbson :: to_bson(& self.id).unwrap_or_default() ; } "url" [INFO] [stdout] => { return rbson :: to_bson(& self.url).unwrap_or_default() ; } [INFO] [stdout] "created_at" => [INFO] [stdout] { [INFO] [stdout] return rbson :: to_bson(& self.created_at).unwrap_or_default() [INFO] [stdout] ; [INFO] [stdout] } "status" => [INFO] [stdout] { return rbson :: to_bson(& self.status).unwrap_or_default() ; } [INFO] [stdout] "uploader" => [INFO] [stdout] { return rbson :: to_bson(& self.uploader).unwrap_or_default() ; } [INFO] [stdout] _ => { rbson :: Bson :: Null } [INFO] [stdout] } [INFO] [stdout] } fn table_name() -> String { "biominer_indexd_url".to_string() } fn [INFO] [stdout] table_columns() -> String [INFO] [stdout] { "id,url,created_at,status,uploader".to_string() } fn [INFO] [stdout] formats(driver_type : & rbatis :: core :: db :: DriverType) -> std :: [INFO] [stdout] collections :: HashMap < String, String > [INFO] [stdout] { [INFO] [stdout] let mut m : std :: collections :: HashMap < String, String > = std :: [INFO] [stdout] collections :: HashMap :: new() ; match driver_type [INFO] [stdout] { [INFO] [stdout] rbatis :: core :: db :: DriverType :: Mysql => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: Postgres => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: Sqlite => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: Mssql => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: None => { return m ; }, [INFO] [stdout] } [INFO] [stdout] } [INFO] [stdout] } [INFO] [stdout] ............gen impl CRUDTable end............ [INFO] [stdout] ............gen impl CRUDTable: [INFO] [stdout] #[derive(Serialize, Deserialize, Debug, Eq, PartialEq, Clone, Object)] pub [INFO] [stdout] struct Hash [INFO] [stdout] { [INFO] [stdout] #[oai(read_only)] pub id : u64, #[oai(validator(max_length = 16))] pub [INFO] [stdout] hash_type : String, #[oai(validator(max_length = 128))] pub hash : String, [INFO] [stdout] } impl rbatis :: crud :: CRUDTable for Hash [INFO] [stdout] { [INFO] [stdout] fn get(& self, column : & str) -> rbson :: Bson [INFO] [stdout] { [INFO] [stdout] return match column [INFO] [stdout] { [INFO] [stdout] "id" => [INFO] [stdout] { return rbson :: to_bson(& self.id).unwrap_or_default() ; } [INFO] [stdout] "hash_type" => [INFO] [stdout] { [INFO] [stdout] return rbson :: to_bson(& self.hash_type).unwrap_or_default() [INFO] [stdout] ; [INFO] [stdout] } "hash" => [INFO] [stdout] { return rbson :: to_bson(& self.hash).unwrap_or_default() ; } _ [INFO] [stdout] => { rbson :: Bson :: Null } [INFO] [stdout] } [INFO] [stdout] } fn table_name() -> String { "biominer_indexd_hash".to_string() } fn [INFO] [stdout] table_columns() -> String { "id,hash_type,hash".to_string() } fn [INFO] [stdout] formats(driver_type : & rbatis :: core :: db :: DriverType) -> std :: [INFO] [stdout] collections :: HashMap < String, String > [INFO] [stdout] { [INFO] [stdout] let mut m : std :: collections :: HashMap < String, String > = std :: [INFO] [stdout] collections :: HashMap :: new() ; match driver_type [INFO] [stdout] { [INFO] [stdout] rbatis :: core :: db :: DriverType :: Mysql => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: Postgres => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: Sqlite => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: Mssql => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: None => { return m ; }, [INFO] [stdout] } [INFO] [stdout] } [INFO] [stdout] } [INFO] [stdout] ............gen impl CRUDTable end............ [INFO] [stdout] ............gen impl CRUDTable: [INFO] [stdout] #[derive(Serialize, Deserialize, Debug, Eq, PartialEq, Clone, Object)] pub [INFO] [stdout] struct Alias [INFO] [stdout] { [INFO] [stdout] #[oai(read_only)] pub id : u64, #[oai(validator(max_length = 255))] pub [INFO] [stdout] name : String, [INFO] [stdout] } impl rbatis :: crud :: CRUDTable for Alias [INFO] [stdout] { [INFO] [stdout] fn get(& self, column : & str) -> rbson :: Bson [INFO] [stdout] { [INFO] [stdout] return match column [INFO] [stdout] { [INFO] [stdout] "id" => [INFO] [stdout] { return rbson :: to_bson(& self.id).unwrap_or_default() ; } [INFO] [stdout] "name" => [INFO] [stdout] { return rbson :: to_bson(& self.name).unwrap_or_default() ; } _ [INFO] [stdout] => { rbson :: Bson :: Null } [INFO] [stdout] } [INFO] [stdout] } fn table_name() -> String { "biominer_indexd_alias".to_string() } fn [INFO] [stdout] table_columns() -> String { "id,name".to_string() } fn [INFO] [stdout] formats(driver_type : & rbatis :: core :: db :: DriverType) -> std :: [INFO] [stdout] collections :: HashMap < String, String > [INFO] [stdout] { [INFO] [stdout] let mut m : std :: collections :: HashMap < String, String > = std :: [INFO] [stdout] collections :: HashMap :: new() ; match driver_type [INFO] [stdout] { [INFO] [stdout] rbatis :: core :: db :: DriverType :: Mysql => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: Postgres => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: Sqlite => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: Mssql => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: None => { return m ; }, [INFO] [stdout] } [INFO] [stdout] } [INFO] [stdout] } [INFO] [stdout] ............gen impl CRUDTable end............ [INFO] [stdout] ............gen impl CRUDTable: [INFO] [stdout] #[derive(Serialize, Deserialize, Debug, Eq, PartialEq, Clone, Object)] pub [INFO] [stdout] struct Config [INFO] [stdout] { [INFO] [stdout] #[oai(read_only)] pub id : u64, [INFO] [stdout] #[oai(validator(max_length = 16, pattern = "^[0-9a-z-]{16}$"))] pub [INFO] [stdout] registry_id : String, [INFO] [stdout] } impl rbatis :: crud :: CRUDTable for Config [INFO] [stdout] { [INFO] [stdout] fn get(& self, column : & str) -> rbson :: Bson [INFO] [stdout] { [INFO] [stdout] return match column [INFO] [stdout] { [INFO] [stdout] "id" => [INFO] [stdout] { return rbson :: to_bson(& self.id).unwrap_or_default() ; } [INFO] [stdout] "registry_id" => [INFO] [stdout] { [INFO] [stdout] return rbson :: [INFO] [stdout] to_bson(& self.registry_id).unwrap_or_default() ; [INFO] [stdout] } _ => { rbson :: Bson :: Null } [INFO] [stdout] } [INFO] [stdout] } fn table_name() -> String { "biominer_indexd_config".to_string() } fn [INFO] [stdout] table_columns() -> String { "id,registry_id".to_string() } fn [INFO] [stdout] formats(driver_type : & rbatis :: core :: db :: DriverType) -> std :: [INFO] [stdout] collections :: HashMap < String, String > [INFO] [stdout] { [INFO] [stdout] let mut m : std :: collections :: HashMap < String, String > = std :: [INFO] [stdout] collections :: HashMap :: new() ; match driver_type [INFO] [stdout] { [INFO] [stdout] rbatis :: core :: db :: DriverType :: Mysql => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: Postgres => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: Sqlite => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: Mssql => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: None => { return m ; }, [INFO] [stdout] } [INFO] [stdout] } [INFO] [stdout] } [INFO] [stdout] ............gen impl CRUDTable end............ [INFO] [stdout] ............gen impl CRUDTable: [INFO] [stdout] #[derive(Serialize, Deserialize, Debug, Eq, PartialEq, Clone, Object)] pub [INFO] [stdout] struct File [INFO] [stdout] { [INFO] [stdout] pub guid : String, pub filename : String, pub size : u64, pub created_at : [INFO] [stdout] i64, pub updated_at : i64, pub status : String, pub baseid : String, pub [INFO] [stdout] rev : String, pub version : usize, pub uploader : String, pub urls : [INFO] [stdout] Option < Vec < URL >>, pub hashes : Option < Vec < Hash >>, pub aliases : [INFO] [stdout] Option < Vec < Alias >>, [INFO] [stdout] } impl rbatis :: crud :: CRUDTable for File [INFO] [stdout] { [INFO] [stdout] fn get(& self, column : & str) -> rbson :: Bson [INFO] [stdout] { [INFO] [stdout] return match column [INFO] [stdout] { [INFO] [stdout] "guid" => [INFO] [stdout] { return rbson :: to_bson(& self.guid).unwrap_or_default() ; } [INFO] [stdout] "filename" => [INFO] [stdout] { return rbson :: to_bson(& self.filename).unwrap_or_default() ; } [INFO] [stdout] "size" => [INFO] [stdout] { return rbson :: to_bson(& self.size).unwrap_or_default() ; } [INFO] [stdout] "created_at" => [INFO] [stdout] { [INFO] [stdout] return rbson :: to_bson(& self.created_at).unwrap_or_default() [INFO] [stdout] ; [INFO] [stdout] } "updated_at" => [INFO] [stdout] { [INFO] [stdout] return rbson :: to_bson(& self.updated_at).unwrap_or_default() [INFO] [stdout] ; [INFO] [stdout] } "status" => [INFO] [stdout] { return rbson :: to_bson(& self.status).unwrap_or_default() ; } [INFO] [stdout] "baseid" => [INFO] [stdout] { return rbson :: to_bson(& self.baseid).unwrap_or_default() ; } [INFO] [stdout] "rev" => [INFO] [stdout] { return rbson :: to_bson(& self.rev).unwrap_or_default() ; } [INFO] [stdout] "version" => [INFO] [stdout] { return rbson :: to_bson(& self.version).unwrap_or_default() ; } [INFO] [stdout] "uploader" => [INFO] [stdout] { return rbson :: to_bson(& self.uploader).unwrap_or_default() ; } [INFO] [stdout] "urls" => [INFO] [stdout] { return rbson :: to_bson(& self.urls).unwrap_or_default() ; } [INFO] [stdout] "hashes" => [INFO] [stdout] { return rbson :: to_bson(& self.hashes).unwrap_or_default() ; } [INFO] [stdout] "aliases" => [INFO] [stdout] { return rbson :: to_bson(& self.aliases).unwrap_or_default() ; } [INFO] [stdout] _ => { rbson :: Bson :: Null } [INFO] [stdout] } [INFO] [stdout] } fn table_name() -> String { "biominer_indexd_file".to_string() } fn [INFO] [stdout] table_columns() -> String [INFO] [stdout] { [INFO] [stdout] "guid,filename,size,created_at,updated_at,status,baseid,rev,version,uploader,urls,hashes,aliases".to_string() [INFO] [stdout] } fn formats(driver_type : & rbatis :: core :: db :: DriverType) -> std :: [INFO] [stdout] collections :: HashMap < String, String > [INFO] [stdout] { [INFO] [stdout] let mut m : std :: collections :: HashMap < String, String > = std :: [INFO] [stdout] collections :: HashMap :: new() ; match driver_type [INFO] [stdout] { [INFO] [stdout] rbatis :: core :: db :: DriverType :: Mysql => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: Postgres => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: Sqlite => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: Mssql => { return m ; }, [INFO] [stdout] rbatis :: core :: db :: DriverType :: None => { return m ; }, [INFO] [stdout] } [INFO] [stdout] } [INFO] [stdout] } [INFO] [stdout] ............gen impl CRUDTable end............ [INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/main.rs:46:9 [INFO] [stdout] | [INFO] [stdout] 46 | e.description() [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] gen return [INFO] [stdout] ............gen macro html_sql : [INFO] [stdout] pub async fn [INFO] [stdout] query_files(rb : & mut RbatisExecutor < '_, '_ >, page_req : & PageRequest, [INFO] [stdout] guid : & str, filename : & str, baseid : & str, status : & str, uploader : & [INFO] [stdout] str, hash : & str, alias : & str, url : & str, contain_alias : & usize, [INFO] [stdout] contain_url : & usize,) -> rbatis :: core :: Result < Page < File > > [INFO] [stdout] { [INFO] [stdout] let mut rb_arg_map = rbson :: Document :: new() ; [INFO] [stdout] rb_arg_map.insert("page_req".to_string(), rbson :: [INFO] [stdout] to_bson(page_req).unwrap_or_default()) ; [INFO] [stdout] rb_arg_map.insert("guid".to_string(), rbson :: [INFO] [stdout] to_bson(guid).unwrap_or_default()) ; [INFO] [stdout] rb_arg_map.insert("filename".to_string(), rbson :: [INFO] [stdout] to_bson(filename).unwrap_or_default()) ; [INFO] [stdout] rb_arg_map.insert("baseid".to_string(), rbson :: [INFO] [stdout] to_bson(baseid).unwrap_or_default()) ; [INFO] [stdout] rb_arg_map.insert("status".to_string(), rbson :: [INFO] [stdout] to_bson(status).unwrap_or_default()) ; [INFO] [stdout] rb_arg_map.insert("uploader".to_string(), rbson :: [INFO] [stdout] to_bson(uploader).unwrap_or_default()) ; [INFO] [stdout] rb_arg_map.insert("hash".to_string(), rbson :: [INFO] [stdout] to_bson(hash).unwrap_or_default()) ; [INFO] [stdout] rb_arg_map.insert("alias".to_string(), rbson :: [INFO] [stdout] to_bson(alias).unwrap_or_default()) ; [INFO] [stdout] rb_arg_map.insert("url".to_string(), rbson :: [INFO] [stdout] to_bson(url).unwrap_or_default()) ; [INFO] [stdout] rb_arg_map.insert("contain_alias".to_string(), rbson :: [INFO] [stdout] to_bson(contain_alias).unwrap_or_default()) ; [INFO] [stdout] rb_arg_map.insert("contain_url".to_string(), rbson :: [INFO] [stdout] to_bson(contain_url).unwrap_or_default()) ; {} use rbatis :: executor :: [INFO] [stdout] { RbatisRef } ; let driver_type = rb.get_rbatis().driver_type() ? ; use [INFO] [stdout] rbatis :: { rbatis_sql, AsSqlTag } ; let sql_tag = driver_type.sql_tag() ; [INFO] [stdout] #[rb_html("sql/query_files.xml")] pub fn [INFO] [stdout] query_files(arg : & rbson :: Bson, _tag : char) {} let(mut sql, rb_args) = [INFO] [stdout] query_files(& rbson :: Bson :: Document(rb_arg_map), sql_tag) ; [INFO] [stdout] driver_type.do_replace_tag(& mut sql) ; use rbatis :: crud :: [INFO] [stdout] { CRUD, CRUDMut } ; rb.fetch_page(& sql, rb_args, page_req).await [INFO] [stdout] } [INFO] [stdout] ............gen macro html_sql end............ [INFO] [stdout] try open file:sql/query_files.xml [INFO] [stdout] load html:[ [INFO] [stdout] { [INFO] [stdout] tag: "select", [INFO] [stdout] attributes: { [INFO] [stdout] "id": "query_files", [INFO] [stdout] }, [INFO] [stdout] childs: [ [INFO] [stdout] { [INFO] [stdout] data: "SELECT\n guid, filename, size, updated_at, baseid, rev, version,\n biominer_indexd_file.created_at as created_at,\n biominer_indexd_file.status as status,\n biominer_indexd_file.uploader as uploader,", [INFO] [stdout] }, [INFO] [stdout] { [INFO] [stdout] tag: "if", [INFO] [stdout] attributes: { [INFO] [stdout] "test": "contain_url != 0", [INFO] [stdout] }, [INFO] [stdout] childs: [ [INFO] [stdout] { [INFO] [stdout] data: "json_agg(DISTINCT biominer_indexd_url) as urls,", [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] { [INFO] [stdout] tag: "if", [INFO] [stdout] attributes: { [INFO] [stdout] "test": "contain_alias != 0", [INFO] [stdout] }, [INFO] [stdout] childs: [ [INFO] [stdout] { [INFO] [stdout] data: "json_agg(DISTINCT biominer_indexd_alias) as aliases,", [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] { [INFO] [stdout] data: "json_agg(DISTINCT biominer_indexd_hash) as hashes\n FROM\n biominer_indexd_file\n ${' '}", [INFO] [stdout] }, [INFO] [stdout] { [INFO] [stdout] tag: "if", [INFO] [stdout] attributes: { [INFO] [stdout] "test": "contain_url != 0", [INFO] [stdout] }, [INFO] [stdout] childs: [ [INFO] [stdout] { [INFO] [stdout] data: "JOIN biominer_indexd_url ON biominer_indexd_url.file = biominer_indexd_file.guid", [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] { [INFO] [stdout] tag: "if", [INFO] [stdout] attributes: { [INFO] [stdout] "test": "contain_alias != 0", [INFO] [stdout] }, [INFO] [stdout] childs: [ [INFO] [stdout] { [INFO] [stdout] data: "JOIN biominer_indexd_alias ON biominer_indexd_alias.file = biominer_indexd_file.guid", [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] { [INFO] [stdout] data: "JOIN biominer_indexd_hash ON biominer_indexd_hash.file = biominer_indexd_file.guid\n ${' '}", [INFO] [stdout] }, [INFO] [stdout] { [INFO] [stdout] tag: "where", [INFO] [stdout] childs: [ [INFO] [stdout] { [INFO] [stdout] tag: "if", [INFO] [stdout] attributes: { [INFO] [stdout] "test": "filename != null && filename != ''", [INFO] [stdout] }, [INFO] [stdout] childs: [ [INFO] [stdout] { [INFO] [stdout] data: "filename LIKE CONCAT('%', #{filename}, '%')", [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] { [INFO] [stdout] tag: "if", [INFO] [stdout] attributes: { [INFO] [stdout] "test": "guid != null && guid != ''", [INFO] [stdout] }, [INFO] [stdout] childs: [ [INFO] [stdout] { [INFO] [stdout] data: "and guid = #{guid}", [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] { [INFO] [stdout] tag: "if", [INFO] [stdout] attributes: { [INFO] [stdout] "test": "baseid != null && baseid != ''", [INFO] [stdout] }, [INFO] [stdout] childs: [ [INFO] [stdout] { [INFO] [stdout] data: "and baseid = #{baseid}", [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] { [INFO] [stdout] tag: "if", [INFO] [stdout] attributes: { [INFO] [stdout] "test": "status != null && status != ''", [INFO] [stdout] }, [INFO] [stdout] childs: [ [INFO] [stdout] { [INFO] [stdout] data: "and biominer_indexd_file.status = #{status}", [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] { [INFO] [stdout] tag: "if", [INFO] [stdout] attributes: { [INFO] [stdout] "test": "uploader != null && uploader != ''", [INFO] [stdout] }, [INFO] [stdout] childs: [ [INFO] [stdout] { [INFO] [stdout] data: "and biominer_indexd_file.uploader = #{uploader}", [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] { [INFO] [stdout] tag: "if", [INFO] [stdout] attributes: { [INFO] [stdout] "test": "hash != null && hash != ''", [INFO] [stdout] }, [INFO] [stdout] childs: [ [INFO] [stdout] { [INFO] [stdout] data: "and biominer_indexd_hash.hash = #{hash}", [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] { [INFO] [stdout] tag: "if", [INFO] [stdout] attributes: { [INFO] [stdout] "test": "contain_alias != 0 && alias != null && alias != ''", [INFO] [stdout] }, [INFO] [stdout] childs: [ [INFO] [stdout] { [INFO] [stdout] data: "and biominer_indexd_alias.name = #{alias}", [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] { [INFO] [stdout] tag: "if", [INFO] [stdout] attributes: { [INFO] [stdout] "test": "contain_url != 0 && url != null && url != ''", [INFO] [stdout] }, [INFO] [stdout] childs: [ [INFO] [stdout] { [INFO] [stdout] data: "and biominer_indexd_url.url = #{url}", [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] { [INFO] [stdout] data: "${' '}\n GROUP BY guid", [INFO] [stdout] }, [INFO] [stdout] ], [INFO] [stdout] }, [INFO] [stdout] ] [INFO] [stdout] ............gen macro xml: [INFO] [stdout] use rbatis_sql :: ops :: * ; pub fn [INFO] [stdout] query_files(arg : & rbson :: Bson, _tag : char) -> [INFO] [stdout] (String, Vec < rbson :: Bson >) [INFO] [stdout] { [INFO] [stdout] use rbatis_sql :: ops :: AsProxy ; let mut sql = String :: [INFO] [stdout] with_capacity(1000) ; let mut args = Vec :: with_capacity(20) ; [INFO] [stdout] sql.push_str("SELECT\n guid, filename, size, updated_at, baseid, rev, version,\n biominer_indexd_file.created_at as created_at,\n biominer_indexd_file.status as status,\n biominer_indexd_file.uploader as uploader,") [INFO] [stdout] ; let Y29udGFpbl91cmwgIT0gMA__ = [INFO] [stdout] { let result = { (arg.index("contain_url")).op_ne(& 0i64) } ; result } ; [INFO] [stdout] if Y29udGFpbl91cmwgIT0gMA__ [INFO] [stdout] { [INFO] [stdout] sql.push_str(" ") ; [INFO] [stdout] sql.push_str("json_agg(DISTINCT biominer_indexd_url) as urls,") ; [INFO] [stdout] sql.push_str(" ") ; [INFO] [stdout] } let Y29udGFpbl9hbGlhcyAhPSAw = [INFO] [stdout] { let result = { (arg.index("contain_alias")).op_ne(& 0i64) } ; result } ; [INFO] [stdout] if Y29udGFpbl9hbGlhcyAhPSAw [INFO] [stdout] { [INFO] [stdout] sql.push_str(" ") ; [INFO] [stdout] sql.push_str("json_agg(DISTINCT biominer_indexd_alias) as aliases,") ; [INFO] [stdout] sql.push_str(" ") ; [INFO] [stdout] } let c2VsZWN0OicgJw__ = { let result = { " " } ; result } ; [INFO] [stdout] sql.push_str("json_agg(DISTINCT biominer_indexd_hash) as hashes\n FROM\n biominer_indexd_file\n ${\' \'}".replacen("${\' \'}", [INFO] [stdout] & c2VsZWN0OicgJw__.as_sql(), 1).as_str()) ; let Y29udGFpbl91cmwgIT0gMA__ = [INFO] [stdout] { let result = { (arg.index("contain_url")).op_ne(& 0i64) } ; result } ; [INFO] [stdout] if Y29udGFpbl91cmwgIT0gMA__ [INFO] [stdout] { [INFO] [stdout] sql.push_str(" ") ; [INFO] [stdout] sql.push_str("JOIN biominer_indexd_url ON biominer_indexd_url.file = biominer_indexd_file.guid") [INFO] [stdout] ; sql.push_str(" ") ; [INFO] [stdout] } let Y29udGFpbl9hbGlhcyAhPSAw = [INFO] [stdout] { let result = { (arg.index("contain_alias")).op_ne(& 0i64) } ; result } ; [INFO] [stdout] if Y29udGFpbl9hbGlhcyAhPSAw [INFO] [stdout] { [INFO] [stdout] sql.push_str(" ") ; [INFO] [stdout] sql.push_str("JOIN biominer_indexd_alias ON biominer_indexd_alias.file = biominer_indexd_file.guid") [INFO] [stdout] ; sql.push_str(" ") ; [INFO] [stdout] } let c2VsZWN0OicgJw__ = { let result = { " " } ; result } ; [INFO] [stdout] sql.push_str("JOIN biominer_indexd_hash ON biominer_indexd_hash.file = biominer_indexd_file.guid\n ${\' \'}".replacen("${\' \'}", [INFO] [stdout] & c2VsZWN0OicgJw__.as_sql(), 1).as_str()) ; sql.push_str(" where ") ; [INFO] [stdout] sql.push_str(& [INFO] [stdout] { [INFO] [stdout] let mut sql = String :: new() ; let [INFO] [stdout] ZmlsZW5hbWUgIT0gbnVsbCAmJiBmaWxlbmFtZSAhPSAnJw__ = [INFO] [stdout] { [INFO] [stdout] let result = [INFO] [stdout] { [INFO] [stdout] bool :: [INFO] [stdout] op_from((arg.index("filename")).op_ne(& rbson :: Bson :: [INFO] [stdout] Null)) && bool :: op_from((arg.index("filename")).op_ne(& "")) [INFO] [stdout] } ; result [INFO] [stdout] } ; if ZmlsZW5hbWUgIT0gbnVsbCAmJiBmaWxlbmFtZSAhPSAnJw__ [INFO] [stdout] { [INFO] [stdout] sql.push_str(" ") ; let c2VsZWN0OndoZXJlOnRyaW06ZmlsZW5hbWU_ = [INFO] [stdout] { let result = { arg.index("filename") } ; result } ; [INFO] [stdout] args.push(rbson :: bson! (c2VsZWN0OndoZXJlOnRyaW06ZmlsZW5hbWU_)) ; [INFO] [stdout] sql.push_str("filename LIKE CONCAT(\'%\', ?, \'%\')") ; [INFO] [stdout] sql.push_str(" ") ; [INFO] [stdout] } let Z3VpZCAhPSBudWxsICYmIGd1aWQgIT0gJyc_ = [INFO] [stdout] { [INFO] [stdout] let result = [INFO] [stdout] { [INFO] [stdout] bool :: [INFO] [stdout] op_from((arg.index("guid")).op_ne(& rbson :: Bson :: Null)) && [INFO] [stdout] bool :: op_from((arg.index("guid")).op_ne(& "")) [INFO] [stdout] } ; result [INFO] [stdout] } ; if Z3VpZCAhPSBudWxsICYmIGd1aWQgIT0gJyc_ [INFO] [stdout] { [INFO] [stdout] sql.push_str(" ") ; let c2VsZWN0OndoZXJlOnRyaW06Z3VpZA__ = [INFO] [stdout] { let result = { arg.index("guid") } ; result } ; [INFO] [stdout] args.push(rbson :: bson! (c2VsZWN0OndoZXJlOnRyaW06Z3VpZA__)) ; [INFO] [stdout] sql.push_str("and guid = ?") ; sql.push_str(" ") ; [INFO] [stdout] } let YmFzZWlkICE9IG51bGwgJiYgYmFzZWlkICE9ICcn = [INFO] [stdout] { [INFO] [stdout] let result = [INFO] [stdout] { [INFO] [stdout] bool :: [INFO] [stdout] op_from((arg.index("baseid")).op_ne(& rbson :: Bson :: Null)) [INFO] [stdout] && bool :: op_from((arg.index("baseid")).op_ne(& "")) [INFO] [stdout] } ; result [INFO] [stdout] } ; if YmFzZWlkICE9IG51bGwgJiYgYmFzZWlkICE9ICcn [INFO] [stdout] { [INFO] [stdout] sql.push_str(" ") ; let c2VsZWN0OndoZXJlOnRyaW06YmFzZWlk = [INFO] [stdout] { let result = { arg.index("baseid") } ; result } ; [INFO] [stdout] args.push(rbson :: bson! (c2VsZWN0OndoZXJlOnRyaW06YmFzZWlk)) ; [INFO] [stdout] sql.push_str("and baseid = ?") ; sql.push_str(" ") ; [INFO] [stdout] } let c3RhdHVzICE9IG51bGwgJiYgc3RhdHVzICE9ICcn = [INFO] [stdout] { [INFO] [stdout] let result = [INFO] [stdout] { [INFO] [stdout] bool :: [INFO] [stdout] op_from((arg.index("status")).op_ne(& rbson :: Bson :: Null)) [INFO] [stdout] && bool :: op_from((arg.index("status")).op_ne(& "")) [INFO] [stdout] } ; result [INFO] [stdout] } ; if c3RhdHVzICE9IG51bGwgJiYgc3RhdHVzICE9ICcn [INFO] [stdout] { [INFO] [stdout] sql.push_str(" ") ; let c2VsZWN0OndoZXJlOnRyaW06c3RhdHVz = [INFO] [stdout] { let result = { arg.index("status") } ; result } ; [INFO] [stdout] args.push(rbson :: bson! (c2VsZWN0OndoZXJlOnRyaW06c3RhdHVz)) ; [INFO] [stdout] sql.push_str("and biominer_indexd_file.status = ?") ; [INFO] [stdout] sql.push_str(" ") ; [INFO] [stdout] } let dXBsb2FkZXIgIT0gbnVsbCAmJiB1cGxvYWRlciAhPSAnJw__ = [INFO] [stdout] { [INFO] [stdout] let result = [INFO] [stdout] { [INFO] [stdout] bool :: [INFO] [stdout] op_from((arg.index("uploader")).op_ne(& rbson :: Bson :: [INFO] [stdout] Null)) && bool :: op_from((arg.index("uploader")).op_ne(& "")) [INFO] [stdout] } ; result [INFO] [stdout] } ; if dXBsb2FkZXIgIT0gbnVsbCAmJiB1cGxvYWRlciAhPSAnJw__ [INFO] [stdout] { [INFO] [stdout] sql.push_str(" ") ; let c2VsZWN0OndoZXJlOnRyaW06dXBsb2FkZXI_ = [INFO] [stdout] { let result = { arg.index("uploader") } ; result } ; [INFO] [stdout] args.push(rbson :: bson! (c2VsZWN0OndoZXJlOnRyaW06dXBsb2FkZXI_)) ; [INFO] [stdout] sql.push_str("and biominer_indexd_file.uploader = ?") ; [INFO] [stdout] sql.push_str(" ") ; [INFO] [stdout] } let aGFzaCAhPSBudWxsICYmIGhhc2ggIT0gJyc_ = [INFO] [stdout] { [INFO] [stdout] let result = [INFO] [stdout] { [INFO] [stdout] bool :: [INFO] [stdout] op_from((arg.index("hash")).op_ne(& rbson :: Bson :: Null)) && [INFO] [stdout] bool :: op_from((arg.index("hash")).op_ne(& "")) [INFO] [stdout] } ; result [INFO] [stdout] } ; if aGFzaCAhPSBudWxsICYmIGhhc2ggIT0gJyc_ [INFO] [stdout] { [INFO] [stdout] sql.push_str(" ") ; let c2VsZWN0OndoZXJlOnRyaW06aGFzaA__ = [INFO] [stdout] { let result = { arg.index("hash") } ; result } ; [INFO] [stdout] args.push(rbson :: bson! (c2VsZWN0OndoZXJlOnRyaW06aGFzaA__)) ; [INFO] [stdout] sql.push_str("and biominer_indexd_hash.hash = ?") ; [INFO] [stdout] sql.push_str(" ") ; [INFO] [stdout] } let [INFO] [stdout] Y29udGFpbl9hbGlhcyAhPSAwICYmIGFsaWFzICE9IG51bGwgJiYgYWxpYXMgIT0gJyc_ = [INFO] [stdout] { [INFO] [stdout] let result = [INFO] [stdout] { [INFO] [stdout] bool :: [INFO] [stdout] op_from(bool :: [INFO] [stdout] op_from((arg.index("contain_alias")).op_ne(& 0i64)) && bool :: [INFO] [stdout] op_from((arg.index("alias")).op_ne(& rbson :: Bson :: Null))) [INFO] [stdout] && bool :: op_from((arg.index("alias")).op_ne(& "")) [INFO] [stdout] } ; result [INFO] [stdout] } ; if [INFO] [stdout] Y29udGFpbl9hbGlhcyAhPSAwICYmIGFsaWFzICE9IG51bGwgJiYgYWxpYXMgIT0gJyc_ [INFO] [stdout] { [INFO] [stdout] sql.push_str(" ") ; let c2VsZWN0OndoZXJlOnRyaW06YWxpYXM_ = [INFO] [stdout] { let result = { arg.index("alias") } ; result } ; [INFO] [stdout] args.push(rbson :: bson! (c2VsZWN0OndoZXJlOnRyaW06YWxpYXM_)) ; [INFO] [stdout] sql.push_str("and biominer_indexd_alias.name = ?") ; [INFO] [stdout] sql.push_str(" ") ; [INFO] [stdout] } let Y29udGFpbl91cmwgIT0gMCAmJiB1cmwgIT0gbnVsbCAmJiB1cmwgIT0gJyc_ = [INFO] [stdout] { [INFO] [stdout] let result = [INFO] [stdout] { [INFO] [stdout] bool :: [INFO] [stdout] op_from(bool :: [INFO] [stdout] op_from((arg.index("contain_url")).op_ne(& 0i64)) && bool :: [INFO] [stdout] op_from((arg.index("url")).op_ne(& rbson :: Bson :: Null))) && [INFO] [stdout] bool :: op_from((arg.index("url")).op_ne(& "")) [INFO] [stdout] } ; result [INFO] [stdout] } ; if Y29udGFpbl91cmwgIT0gMCAmJiB1cmwgIT0gbnVsbCAmJiB1cmwgIT0gJyc_ [INFO] [stdout] { [INFO] [stdout] sql.push_str(" ") ; let c2VsZWN0OndoZXJlOnRyaW06dXJs = [INFO] [stdout] { let result = { arg.index("url") } ; result } ; [INFO] [stdout] args.push(rbson :: bson! (c2VsZWN0OndoZXJlOnRyaW06dXJs)) ; [INFO] [stdout] sql.push_str("and biominer_indexd_url.url = ?") ; [INFO] [stdout] sql.push_str(" ") ; [INFO] [stdout] } sql = [INFO] [stdout] sql.trim_start_matches(" ").trim_start_matches("and ").trim_start_matches("or ").trim_end_matches(" ").trim_end_matches(" and").trim_end_matches(" or").to_string() [INFO] [stdout] ; sql [INFO] [stdout] }) ; sql.push_str(" ") ; sql = sql.trim_end().to_string() ; sql = [INFO] [stdout] sql.trim_end_matches(" where").to_string() ; let c2VsZWN0OicgJw__ = [INFO] [stdout] { let result = { " " } ; result } ; [INFO] [stdout] sql.push_str("${\' \'}\n GROUP BY guid".replacen("${\' \'}", & [INFO] [stdout] c2VsZWN0OicgJw__.as_sql(), 1).as_str()) ; rbatis_sql :: sql_index! [INFO] [stdout] (sql, _tag) ; return(sql, args) ; [INFO] [stdout] } fn _include_query_files() [INFO] [stdout] { let _ = include_str! ("/opt/rustwide/workdir/sql/query_files.xml") ; } [INFO] [stdout] ............gen macro xml end............ [INFO] [stdout] warning: 4 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `f` [INFO] [stdout] --> src/database.rs:210:9 [INFO] [stdout] | [INFO] [stdout] 210 | let f = match tx [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_f` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `h` [INFO] [stdout] --> src/database.rs:233:9 [INFO] [stdout] | [INFO] [stdout] 233 | let h = match tx [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_h` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `msg` [INFO] [stdout] --> src/database.rs:381:11 [INFO] [stdout] | [INFO] [stdout] 381 | Err(msg) => "postgres://postgres:password@localhost:5432/test_biominer_indexd".to_string(), [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_msg` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `NotFound` [INFO] [stdout] --> src/api/files.rs:20:3 [INFO] [stdout] | [INFO] [stdout] 20 | NotFound(PlainText), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/database.rs:190:9 [INFO] [stdout] | [INFO] [stdout] 190 | tx1.rollback().await; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 5 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 20.56s [INFO] running `Command { std: "docker" "inspect" "eac11c9799e84de88ff30f9d05ef584420634f53aeb9a6c95a4b642df9bbb7ad", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "eac11c9799e84de88ff30f9d05ef584420634f53aeb9a6c95a4b642df9bbb7ad", kill_on_drop: false }` [INFO] [stdout] eac11c9799e84de88ff30f9d05ef584420634f53aeb9a6c95a4b642df9bbb7ad [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-13/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-13/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=warn" "-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:eaef2f80f755933c374d2ae5edccceec0c1312ceb8a4e0b6404e8ab76561e1e5" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "test" "--frozen", kill_on_drop: false }` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] f116f43b95b1af3bbaa30c2eb0b05bd4c811b19e298ffabf1421c212ac898765 [INFO] running `Command { std: "docker" "start" "-a" "f116f43b95b1af3bbaa30c2eb0b05bd4c811b19e298ffabf1421c212ac898765", kill_on_drop: false }` [INFO] [stderr] warning: unused variable: `f` [INFO] [stderr] --> src/database.rs:210:9 [INFO] [stderr] | [INFO] [stderr] 210 | let f = match tx [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_f` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `h` [INFO] [stderr] --> src/database.rs:233:9 [INFO] [stderr] | [INFO] [stderr] 233 | let h = match tx [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_h` [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `NotFound` [INFO] [stderr] --> src/api/files.rs:20:3 [INFO] [stderr] | [INFO] [stderr] 20 | NotFound(PlainText), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/database.rs:190:9 [INFO] [stderr] | [INFO] [stderr] 190 | tx1.rollback().await; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_must_use)]` on by default [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused variable: `msg` [INFO] [stderr] --> src/database.rs:381:11 [INFO] [stderr] | [INFO] [stderr] 381 | Err(msg) => "postgres://postgres:password@localhost:5432/test_biominer_indexd".to_string(), [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_msg` [INFO] [stderr] [INFO] [stderr] warning: `biominer-indexd` (lib) generated 4 warnings [INFO] [stderr] warning: `biominer-indexd` (lib test) generated 5 warnings (4 duplicates) [INFO] [stderr] warning: unused `#[macro_use]` import [INFO] [stderr] --> src/main.rs:1:1 [INFO] [stderr] | [INFO] [stderr] 1 | #[macro_use] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused `#[macro_use]` import [INFO] [stderr] --> src/main.rs:5:1 [INFO] [stderr] | [INFO] [stderr] 5 | #[macro_use] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `time::Duration` [INFO] [stderr] --> src/main.rs:21:19 [INFO] [stderr] | [INFO] [stderr] 21 | use tokio::{self, time::Duration}; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stderr] --> src/main.rs:46:9 [INFO] [stderr] | [INFO] [stderr] 46 | e.description() [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: `biominer-indexd` (bin "biominer-indexd" test) generated 4 warnings [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.44s [INFO] [stderr] Running unittests (/opt/rustwide/target/debug/deps/biominer_indexd-be3ac4311e7a90d6) [INFO] [stdout] [INFO] [stdout] running 2 tests [INFO] [stdout] test database::tests::test_query_files ... FAILED [INFO] [stdout] test database::tests::test_query_file ... FAILED [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] [INFO] [stdout] ---- database::tests::test_query_files stdout ---- [INFO] [stdout] thread 'database::tests::test_query_files' panicked at 'called `Result::unwrap()` on an `Err` value: Database("error communicating with database: Cannot assign requested address (os error 99)")', src/database.rs:369:32 [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x560efd8c5d7d - std::backtrace_rs::backtrace::libunwind::trace::hee598835bc88d35b [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/../../backtrace/src/backtrace/libunwind.rs:93:5 [INFO] [stdout] 1: 0x560efd8c5d7d - std::backtrace_rs::backtrace::trace_unsynchronized::h9cdc730ba5cf5d72 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5 [INFO] [stdout] 2: 0x560efd8c5d7d - std::sys_common::backtrace::_print_fmt::h75aeaf7ed30e43fa [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/sys_common/backtrace.rs:66:5 [INFO] [stdout] 3: 0x560efd8c5d7d - ::fmt::h606862f787600875 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/sys_common/backtrace.rs:45:22 [INFO] [stdout] 4: 0x560efd8ed61c - core::fmt::write::he803f0f418caf762 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/fmt/mod.rs:1190:17 [INFO] [stdout] 5: 0x560efd8bf5a8 - std::io::Write::write_fmt::hbe7c1a63616291e2 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/io/mod.rs:1657:15 [INFO] [stdout] 6: 0x560efd8c83b7 - std::sys_common::backtrace::_print::h64d038cf8ac3e13e [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/sys_common/backtrace.rs:48:5 [INFO] [stdout] 7: 0x560efd8c83b7 - std::sys_common::backtrace::print::h359300b4a7fccf65 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/sys_common/backtrace.rs:35:9 [INFO] [stdout] 8: 0x560efd8c83b7 - std::panicking::default_hook::{{closure}}::hf51be35e2f510149 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/panicking.rs:295:22 [INFO] [stdout] 9: 0x560efd8c80ec - std::panicking::default_hook::h03ca0f22e1d2d25e [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/panicking.rs:311:9 [INFO] [stdout] 10: 0x560efd8c8b09 - std::panicking::rust_panic_with_hook::h3b7380e99b825b63 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/panicking.rs:698:17 [INFO] [stdout] 11: 0x560efd8c87f7 - std::panicking::begin_panic_handler::{{closure}}::h8e849d0710154ce0 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/panicking.rs:588:13 [INFO] [stdout] 12: 0x560efd8c6244 - std::sys_common::backtrace::__rust_end_short_backtrace::hedcdaddbd4c46cc5 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/sys_common/backtrace.rs:138:18 [INFO] [stdout] 13: 0x560efd8c8509 - rust_begin_unwind [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/panicking.rs:584:5 [INFO] [stdout] 14: 0x560efd0a17e3 - core::panicking::panic_fmt::he1bbc7336d49a357 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/panicking.rs:143:14 [INFO] [stdout] 15: 0x560efd0a18d3 - core::result::unwrap_failed::h719f957ed74f93fd [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/result.rs:1749:5 [INFO] [stdout] 16: 0x560efd0f04d2 - core::result::Result::unwrap::h8c782476be9b9387 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/result.rs:1065:23 [INFO] [stdout] 17: 0x560efd0a2a7f - biominer_indexd::database::init_rbatis::{{closure}}::h275c65bdafdf0734 [INFO] [stdout] at /opt/rustwide/workdir/src/database.rs:369:3 [INFO] [stdout] 18: 0x560efd11d119 - as core::future::future::Future>::poll::h09bed72ce1e22ba3 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/future/mod.rs:84:19 [INFO] [stdout] 19: 0x560efd0f2a34 - biominer_indexd::database::tests::init::{{closure}}::hcdd9cc5e1952cb04 [INFO] [stdout] at /opt/rustwide/workdir/src/database.rs:384:38 [INFO] [stdout] 20: 0x560efd11f189 - as core::future::future::Future>::poll::hdff8bc5aaf23e857 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/future/mod.rs:84:19 [INFO] [stdout] 21: 0x560efd0f6a98 - biominer_indexd::database::tests::test_query_files::{{closure}}::hdd56277f8192535a [INFO] [stdout] at /opt/rustwide/workdir/src/database.rs:389:20 [INFO] [stdout] 22: 0x560efd11f03b - as core::future::future::Future>::poll::hd7192f810bcf4ca0 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/future/mod.rs:84:19 [INFO] [stdout] 23: 0x560efd0debaa - as core::future::future::Future>::poll::h00565248c0ba6158 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/future/future.rs:123:9 [INFO] [stdout] 24: 0x560efd117970 - tokio::runtime::basic_scheduler::CoreGuard::block_on::{{closure}}::{{closure}}::{{closure}}::h2a754de6307b7ccf [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/tokio-1.17.0/src/runtime/basic_scheduler.rs:498:48 [INFO] [stdout] 25: 0x560efd0f7cc0 - tokio::coop::with_budget::{{closure}}::ha2f47f1063355874 [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/tokio-1.17.0/src/coop.rs:102:9 [INFO] [stdout] 26: 0x560efd0ebad8 - std::thread::local::LocalKey::try_with::ha95e12e66cfa2987 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/thread/local.rs:413:16 [INFO] [stdout] 27: 0x560efd0eb11d - std::thread::local::LocalKey::with::h5351eeccb4ed5391 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/thread/local.rs:389:9 [INFO] [stdout] 28: 0x560efd1178e5 - tokio::coop::with_budget::he6b32633afea01e5 [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/tokio-1.17.0/src/coop.rs:95:5 [INFO] [stdout] 29: 0x560efd1178e5 - tokio::coop::budget::he119912a250f185f [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/tokio-1.17.0/src/coop.rs:72:5 [INFO] [stdout] 30: 0x560efd1178e5 - tokio::runtime::basic_scheduler::CoreGuard::block_on::{{closure}}::{{closure}}::h836ad7f9cb6b8631 [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/tokio-1.17.0/src/runtime/basic_scheduler.rs:498:25 [INFO] [stdout] 31: 0x560efd115741 - tokio::runtime::basic_scheduler::Context::enter::h6bf7d64562bee5ed [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/tokio-1.17.0/src/runtime/basic_scheduler.rs:356:19 [INFO] [stdout] 32: 0x560efd11727d - tokio::runtime::basic_scheduler::CoreGuard::block_on::{{closure}}::hb8fd6f73abb06525 [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/tokio-1.17.0/src/runtime/basic_scheduler.rs:497:36 [INFO] [stdout] 33: 0x560efd11823b - tokio::runtime::basic_scheduler::CoreGuard::enter::{{closure}}::h6fb0f964aaf2d2d6 [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/tokio-1.17.0/src/runtime/basic_scheduler.rs:555:57 [INFO] [stdout] 34: 0x560efd1397a7 - tokio::macros::scoped_tls::ScopedKey::set::h007e7c1fbac504a6 [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/tokio-1.17.0/src/macros/scoped_tls.rs:61:9 [INFO] [stdout] 35: 0x560efd117c50 - tokio::runtime::basic_scheduler::CoreGuard::enter::h79711e3c6cc3b95a [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/tokio-1.17.0/src/runtime/basic_scheduler.rs:555:27 [INFO] [stdout] 36: 0x560efd116870 - tokio::runtime::basic_scheduler::CoreGuard::block_on::h44ee705f3bd42708 [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/tokio-1.17.0/src/runtime/basic_scheduler.rs:488:9 [INFO] [stdout] 37: 0x560efd11466f - tokio::runtime::basic_scheduler::BasicScheduler::block_on::h23042abee5d8fdf1 [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/tokio-1.17.0/src/runtime/basic_scheduler.rs:168:24 [INFO] [stdout] 38: 0x560efd1443ae - tokio::runtime::Runtime::block_on::h59de02ef69e9482a [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/tokio-1.17.0/src/runtime/mod.rs:475:46 [INFO] [stdout] 39: 0x560efd0f67e6 - biominer_indexd::database::tests::test_query_files::h9d5dc594fbae7c53 [INFO] [stdout] at /opt/rustwide/workdir/src/database.rs:407:5 [INFO] [stdout] 40: 0x560efd0f668a - biominer_indexd::database::tests::test_query_files::{{closure}}::hc9f9d6a5298e4e8a [INFO] [stdout] at /opt/rustwide/workdir/src/database.rs:388:9 [INFO] [stdout] 41: 0x560efd1332ee - core::ops::function::FnOnce::call_once::he7a1e0181c40bcab [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 42: 0x560efd173613 - core::ops::function::FnOnce::call_once::h2a47b4b927cb6ca5 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 43: 0x560efd173613 - test::__rust_begin_short_backtrace::h594ef8055a183b9b [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/test/src/lib.rs:575:5 [INFO] [stdout] 44: 0x560efd1722f4 - as core::ops::function::FnOnce>::call_once::hb40cbb8bc3e1be15 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/alloc/src/boxed.rs:1853:9 [INFO] [stdout] 45: 0x560efd1722f4 - as core::ops::function::FnOnce<()>>::call_once::ha4f2bd3b806745a0 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] 46: 0x560efd1722f4 - std::panicking::try::do_call::h92af9f8bc77a5987 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/panicking.rs:492:40 [INFO] [stdout] 47: 0x560efd1722f4 - std::panicking::try::h9df49eeae42572b7 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/panicking.rs:456:19 [INFO] [stdout] 48: 0x560efd1722f4 - std::panic::catch_unwind::h101dbadc82bbe0fd [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/panic.rs:137:14 [INFO] [stdout] 49: 0x560efd1722f4 - test::run_test_in_process::h2ad7bffb068e750a [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/test/src/lib.rs:598:18 [INFO] [stdout] 50: 0x560efd1722f4 - test::run_test::run_test_inner::{{closure}}::h384faf46554c5acb [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/test/src/lib.rs:492:39 [INFO] [stdout] 51: 0x560efd17bc11 - test::run_test::run_test_inner::{{closure}}::h17cfe94835a46685 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/test/src/lib.rs:519:37 [INFO] [stdout] 52: 0x560efd17bc11 - std::sys_common::backtrace::__rust_begin_short_backtrace::h82709e5086312627 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/sys_common/backtrace.rs:122:18 [INFO] [stdout] 53: 0x560efd14828f - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::hdfea66a201b39571 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/thread/mod.rs:498:17 [INFO] [stdout] 54: 0x560efd14828f - as core::ops::function::FnOnce<()>>::call_once::h4912df03598e67fa [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] 55: 0x560efd14828f - std::panicking::try::do_call::h6d5dc1045d0eade8 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/panicking.rs:492:40 [INFO] [stdout] 56: 0x560efd14828f - std::panicking::try::hbc897fc717ec6571 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/panicking.rs:456:19 [INFO] [stdout] 57: 0x560efd14828f - std::panic::catch_unwind::h27f1e958c91391ad [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/panic.rs:137:14 [INFO] [stdout] 58: 0x560efd14828f - std::thread::Builder::spawn_unchecked_::{{closure}}::h1b42e48537edc3c0 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/thread/mod.rs:497:30 [INFO] [stdout] 59: 0x560efd14828f - core::ops::function::FnOnce::call_once{{vtable.shim}}::h9137b3d6d2a88354 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 60: 0x560efd8cebd3 - as core::ops::function::FnOnce>::call_once::hf70ac038171e3e1a [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/alloc/src/boxed.rs:1853:9 [INFO] [stdout] 61: 0x560efd8cebd3 - as core::ops::function::FnOnce>::call_once::he6690128792365ad [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/alloc/src/boxed.rs:1853:9 [INFO] [stdout] 62: 0x560efd8cebd3 - std::sys::unix::thread::Thread::new::thread_start::ha07928d93d5a5ec9 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/sys/unix/thread.rs:108:17 [INFO] [stdout] 63: 0x7f0188e24609 - start_thread [INFO] [stdout] 64: 0x7f0188bf4163 - clone [INFO] [stdout] 65: 0x0 - [INFO] [stdout] [INFO] [stdout] ---- database::tests::test_query_file stdout ---- [INFO] [stdout] thread 'database::tests::test_query_file' panicked at 'called `Result::unwrap()` on an `Err` value: Database("error communicating with database: Cannot assign requested address (os error 99)")', src/database.rs:369:32 [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x560efd8c5d7d - std::backtrace_rs::backtrace::libunwind::trace::hee598835bc88d35b [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/../../backtrace/src/backtrace/libunwind.rs:93:5 [INFO] [stdout] 1: 0x560efd8c5d7d - std::backtrace_rs::backtrace::trace_unsynchronized::h9cdc730ba5cf5d72 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5 [INFO] [stdout] 2: 0x560efd8c5d7d - std::sys_common::backtrace::_print_fmt::h75aeaf7ed30e43fa [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/sys_common/backtrace.rs:66:5 [INFO] [stdout] 3: 0x560efd8c5d7d - ::fmt::h606862f787600875 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/sys_common/backtrace.rs:45:22 [INFO] [stdout] 4: 0x560efd8ed61c - core::fmt::write::he803f0f418caf762 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/fmt/mod.rs:1190:17 [INFO] [stdout] 5: 0x560efd8bf5a8 - std::io::Write::write_fmt::hbe7c1a63616291e2 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/io/mod.rs:1657:15 [INFO] [stdout] 6: 0x560efd8c83b7 - std::sys_common::backtrace::_print::h64d038cf8ac3e13e [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/sys_common/backtrace.rs:48:5 [INFO] [stdout] 7: 0x560efd8c83b7 - std::sys_common::backtrace::print::h359300b4a7fccf65 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/sys_common/backtrace.rs:35:9 [INFO] [stdout] 8: 0x560efd8c83b7 - std::panicking::default_hook::{{closure}}::hf51be35e2f510149 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/panicking.rs:295:22 [INFO] [stdout] 9: 0x560efd8c80ec - std::panicking::default_hook::h03ca0f22e1d2d25e [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/panicking.rs:311:9 [INFO] [stdout] 10: 0x560efd8c8b09 - std::panicking::rust_panic_with_hook::h3b7380e99b825b63 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/panicking.rs:698:17 [INFO] [stdout] 11: 0x560efd8c87f7 - std::panicking::begin_panic_handler::{{closure}}::h8e849d0710154ce0 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/panicking.rs:588:13 [INFO] [stdout] 12: 0x560efd8c6244 - std::sys_common::backtrace::__rust_end_short_backtrace::hedcdaddbd4c46cc5 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/sys_common/backtrace.rs:138:18 [INFO] [stdout] 13: 0x560efd8c8509 - rust_begin_unwind [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/panicking.rs:584:5 [INFO] [stdout] 14: 0x560efd0a17e3 - core::panicking::panic_fmt::he1bbc7336d49a357 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/panicking.rs:143:14 [INFO] [stdout] 15: 0x560efd0a18d3 - core::result::unwrap_failed::h719f957ed74f93fd [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/result.rs:1749:5 [INFO] [stdout] 16: 0x560efd0f04d2 - core::result::Result::unwrap::h8c782476be9b9387 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/result.rs:1065:23 [INFO] [stdout] 17: 0x560efd0a2a7f - biominer_indexd::database::init_rbatis::{{closure}}::h275c65bdafdf0734 [INFO] [stdout] at /opt/rustwide/workdir/src/database.rs:369:3 [INFO] [stdout] 18: 0x560efd11d119 - as core::future::future::Future>::poll::h09bed72ce1e22ba3 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/future/mod.rs:84:19 [INFO] [stdout] 19: 0x560efd0f2a34 - biominer_indexd::database::tests::init::{{closure}}::hcdd9cc5e1952cb04 [INFO] [stdout] at /opt/rustwide/workdir/src/database.rs:384:38 [INFO] [stdout] 20: 0x560efd11f189 - as core::future::future::Future>::poll::hdff8bc5aaf23e857 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/future/mod.rs:84:19 [INFO] [stdout] 21: 0x560efd0f7378 - biominer_indexd::database::tests::test_query_file::{{closure}}::hecb6d9748e337eb9 [INFO] [stdout] at /opt/rustwide/workdir/src/database.rs:412:20 [INFO] [stdout] 22: 0x560efd11d70b - as core::future::future::Future>::poll::h46d664433a560be2 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/future/mod.rs:84:19 [INFO] [stdout] 23: 0x560efd0dec6a - as core::future::future::Future>::poll::h16faffca27f49b6b [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/future/future.rs:123:9 [INFO] [stdout] 24: 0x560efd1179d0 - tokio::runtime::basic_scheduler::CoreGuard::block_on::{{closure}}::{{closure}}::{{closure}}::hc026ed0542efba63 [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/tokio-1.17.0/src/runtime/basic_scheduler.rs:498:48 [INFO] [stdout] 25: 0x560efd0f7960 - tokio::coop::with_budget::{{closure}}::h3bdab00f38b7036b [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/tokio-1.17.0/src/coop.rs:102:9 [INFO] [stdout] 26: 0x560efd0eb898 - std::thread::local::LocalKey::try_with::h727db1ecc1e82f0a [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/thread/local.rs:413:16 [INFO] [stdout] 27: 0x560efd0eb31d - std::thread::local::LocalKey::with::haf882d1cf7cdcf8b [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/thread/local.rs:389:9 [INFO] [stdout] 28: 0x560efd1177e5 - tokio::coop::with_budget::h9fe79628e5919f75 [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/tokio-1.17.0/src/coop.rs:95:5 [INFO] [stdout] 29: 0x560efd1177e5 - tokio::coop::budget::h8f48808b2493773f [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/tokio-1.17.0/src/coop.rs:72:5 [INFO] [stdout] 30: 0x560efd1177e5 - tokio::runtime::basic_scheduler::CoreGuard::block_on::{{closure}}::{{closure}}::h3c71731af7aa1a48 [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/tokio-1.17.0/src/runtime/basic_scheduler.rs:498:25 [INFO] [stdout] 31: 0x560efd115d41 - tokio::runtime::basic_scheduler::Context::enter::hc7163a4b6d068da6 [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/tokio-1.17.0/src/runtime/basic_scheduler.rs:356:19 [INFO] [stdout] 32: 0x560efd116b4d - tokio::runtime::basic_scheduler::CoreGuard::block_on::{{closure}}::h81f91a422753041d [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/tokio-1.17.0/src/runtime/basic_scheduler.rs:497:36 [INFO] [stdout] 33: 0x560efd11827b - tokio::runtime::basic_scheduler::CoreGuard::enter::{{closure}}::hc09904aab2bfd332 [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/tokio-1.17.0/src/runtime/basic_scheduler.rs:555:57 [INFO] [stdout] 34: 0x560efd1398a7 - tokio::macros::scoped_tls::ScopedKey::set::hc61eb16e8146e485 [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/tokio-1.17.0/src/macros/scoped_tls.rs:61:9 [INFO] [stdout] 35: 0x560efd117ff0 - tokio::runtime::basic_scheduler::CoreGuard::enter::ha6a1c02e4d2ba7f5 [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/tokio-1.17.0/src/runtime/basic_scheduler.rs:555:27 [INFO] [stdout] 36: 0x560efd1168c0 - tokio::runtime::basic_scheduler::CoreGuard::block_on::h5f6cf920b2c00b5e [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/tokio-1.17.0/src/runtime/basic_scheduler.rs:488:9 [INFO] [stdout] 37: 0x560efd114adf - tokio::runtime::basic_scheduler::BasicScheduler::block_on::hbf2618a4762f5a1a [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/tokio-1.17.0/src/runtime/basic_scheduler.rs:168:24 [INFO] [stdout] 38: 0x560efd14453e - tokio::runtime::Runtime::block_on::hf383b6fabd023ef7 [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/tokio-1.17.0/src/runtime/mod.rs:475:46 [INFO] [stdout] 39: 0x560efd0f70c6 - biominer_indexd::database::tests::test_query_file::h30d37637be8b2f9d [INFO] [stdout] at /opt/rustwide/workdir/src/database.rs:417:5 [INFO] [stdout] 40: 0x560efd0f6f6a - biominer_indexd::database::tests::test_query_file::{{closure}}::h8d519e0a95da2ce9 [INFO] [stdout] at /opt/rustwide/workdir/src/database.rs:411:9 [INFO] [stdout] 41: 0x560efd132d2e - core::ops::function::FnOnce::call_once::h5c95ff34e06bce37 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 42: 0x560efd173613 - core::ops::function::FnOnce::call_once::h2a47b4b927cb6ca5 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 43: 0x560efd173613 - test::__rust_begin_short_backtrace::h594ef8055a183b9b [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/test/src/lib.rs:575:5 [INFO] [stdout] 44: 0x560efd1722f4 - as core::ops::function::FnOnce>::call_once::hb40cbb8bc3e1be15 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/alloc/src/boxed.rs:1853:9 [INFO] [stdout] 45: 0x560efd1722f4 - as core::ops::function::FnOnce<()>>::call_once::ha4f2bd3b806745a0 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] 46: 0x560efd1722f4 - std::panicking::try::do_call::h92af9f8bc77a5987 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/panicking.rs:492:40 [INFO] [stdout] 47: 0x560efd1722f4 - std::panicking::try::h9df49eeae42572b7 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/panicking.rs:456:19 [INFO] [stdout] 48: 0x560efd1722f4 - std::panic::catch_unwind::h101dbadc82bbe0fd [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/panic.rs:137:14 [INFO] [stdout] 49: 0x560efd1722f4 - test::run_test_in_process::h2ad7bffb068e750a [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/test/src/lib.rs:598:18 [INFO] [stdout] 50: 0x560efd1722f4 - test::run_test::run_test_inner::{{closure}}::h384faf46554c5acb [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/test/src/lib.rs:492:39 [INFO] [stdout] 51: 0x560efd17bc11 - test::run_test::run_test_inner::{{closure}}::h17cfe94835a46685 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/test/src/lib.rs:519:37 [INFO] [stdout] 52: 0x560efd17bc11 - std::sys_common::backtrace::__rust_begin_short_backtrace::h82709e5086312627 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/sys_common/backtrace.rs:122:18 [INFO] [stdout] 53: 0x560efd14828f - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::hdfea66a201b39571 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/thread/mod.rs:498:17 [INFO] [stdout] 54: 0x560efd14828f - as core::ops::function::FnOnce<()>>::call_once::h4912df03598e67fa [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] 55: 0x560efd14828f - std::panicking::try::do_call::h6d5dc1045d0eade8 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/panicking.rs:492:40 [INFO] [stdout] 56: 0x560efd14828f - std::panicking::try::hbc897fc717ec6571 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/panicking.rs:456:19 [INFO] [stdout] 57: 0x560efd14828f - std::panic::catch_unwind::h27f1e958c91391ad [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/panic.rs:137:14 [INFO] [stdout] 58: 0x560efd14828f - std::thread::Builder::spawn_unchecked_::{{closure}}::h1b42e48537edc3c0 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/thread/mod.rs:497:30 [INFO] [stdout] 59: 0x560efd14828f - core::ops::function::FnOnce::call_once{{vtable.shim}}::h9137b3d6d2a88354 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 60: 0x560efd8cebd3 - as core::ops::function::FnOnce>::call_once::hf70ac038171e3e1a [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/alloc/src/boxed.rs:1853:9 [INFO] [stdout] 61: 0x560efd8cebd3 - as core::ops::function::FnOnce>::call_once::he6690128792365ad [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/alloc/src/boxed.rs:1853:9 [INFO] [stdout] 62: 0x560efd8cebd3 - std::sys::unix::thread::Thread::new::thread_start::ha07928d93d5a5ec9 [INFO] [stdout] at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/sys/unix/thread.rs:108:17 [INFO] [stdout] 63: 0x7f0188e24609 - start_thread [INFO] [stdout] 64: 0x7f0188bf4163 - clone [INFO] [stdout] 65: 0x0 - [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] database::tests::test_query_file [INFO] [stdout] database::tests::test_query_files [INFO] [stdout] [INFO] [stdout] test result: FAILED. 0 passed; 2 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.14s [INFO] [stdout] [INFO] [stderr] error: test failed, to rerun pass '--lib' [INFO] running `Command { std: "docker" "inspect" "f116f43b95b1af3bbaa30c2eb0b05bd4c811b19e298ffabf1421c212ac898765", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f116f43b95b1af3bbaa30c2eb0b05bd4c811b19e298ffabf1421c212ac898765", kill_on_drop: false }` [INFO] [stdout] f116f43b95b1af3bbaa30c2eb0b05bd4c811b19e298ffabf1421c212ac898765