Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Database pool init error #9

Open
soelangen opened this issue Nov 4, 2024 · 0 comments
Open

Database pool init error #9

soelangen opened this issue Nov 4, 2024 · 0 comments

Comments

@soelangen
Copy link

Hello,
as seen in stefano-garzarella/snp-svsm-vtpm#7 sometimes the database pool can not be correctly initialized.

Information

@stefano-garzarella was able to reproduce this error when he set wrong file permissions on purpose through the following commands:

$ chmod 600 db/diesel/db.sqlite
$ chown root:root db/diesel/db.sqlite

However the default permissions on mine and his system for this file were the following with my system failing and his not:

$ ls -l db/diesel/db.sqlite 
-rw-r--r-- 1 ecl ecl 4096 Nov  4 10:43 db/diesel/db.sqlite

System information

rustc 1.82.0 (f6e511eec 2024-10-15)
ext4 file system with lvm as a base

Reproduction

I have executed the following steps:

git clone https://github.com/virtee/reference-kbs.git
cd reference-kbs
cargo run

which leads to the following output:

warning: patch for `sev` uses the features mechanism. default-features and features will not take effect because the patch dependency does not support this mechanism
warning: Patch `sev v0.3.0 (https://github.com/slp/sev?branch=external-digest#b6a3f6cd)` was not used in the crate graph.
Check that the patched package version and available features are compatible
with the dependency requirements. If the patch has a different version from
what is locked in the Cargo.lock file, run `cargo update` to use the new
version. This may also occur with an optional dependency that is not enabled.
   Compiling proc-macro2 v1.0.43
   Compiling autocfg v1.1.0
   Compiling unicode-ident v1.0.3
   Compiling quote v1.0.21
   Compiling syn v1.0.99
   Compiling libc v0.2.132
   Compiling version_check v0.9.4
   Compiling cfg-if v1.0.0
   Compiling typenum v1.15.0
   Compiling pkg-config v0.3.25
   Compiling serde_derive v1.0.144
   Compiling serde v1.0.144
   Compiling pin-project-lite v0.2.9
   Compiling once_cell v1.13.1
   Compiling log v0.4.17
   Compiling memchr v2.5.0
   Compiling cc v1.0.73
   Compiling futures-channel v0.3.23
   Compiling itoa v1.0.3
   Compiling subtle v2.4.1
   Compiling bytes v1.2.1
   Compiling futures-core v0.3.23
   Compiling pin-utils v0.1.0
   Compiling bitflags v1.3.2
   Compiling yansi v0.5.1
   Compiling smallvec v1.9.0
   Compiling cpufeatures v0.2.3
   Compiling fnv v1.0.7
   Compiling httparse v1.7.1
   Compiling futures-task v0.3.23
   Compiling opaque-debug v0.3.0
   Compiling futures-sink v0.3.23
   Compiling parking_lot_core v0.9.3
   Compiling scopeguard v1.1.0
   Compiling hashbrown v0.12.3
   Compiling try-lock v0.2.3
   Compiling futures-util v0.3.23
   Compiling futures-io v0.3.23
   Compiling ppv-lite86 v0.2.16
   Compiling time-macros v0.2.4
   Compiling inlinable_string v0.1.15
   Compiling ref-cast v1.0.9
   Compiling tower-service v0.3.2
   Compiling httpdate v1.0.2
   Compiling byteorder v1.4.3
   Compiling num_threads v0.1.6
   Compiling percent-encoding v2.1.0
   Compiling base64 v0.13.0
   Compiling serde_json v1.0.85
   Compiling state v0.5.3
   Compiling encoding_rs v0.8.31
   Compiling either v1.8.0
   Compiling async-trait v0.1.57
   Compiling ryu v1.0.11
   Compiling kvm-ioctls v0.13.0
   Compiling openssl v0.10.45
   Compiling foreign-types-shared v0.1.1
   Compiling glob v0.3.0
   Compiling spin v0.9.4
   Compiling fastrand v1.8.0
   Compiling mime v0.3.16
   Compiling unicode-xid v0.2.3
   Compiling remove_dir_all v0.5.3
   Compiling sev v1.1.0
   Compiling static_assertions v1.1.0
   Compiling codicon v3.0.0
   Compiling binascii v0.1.4
   Compiling iocuddle v0.1.1
   Compiling uuid v1.3.0
   Compiling bitfield v0.13.2
   Compiling curl v0.4.44
   Compiling openssl-probe v0.1.5
   Compiling hex v0.4.3
   Compiling tracing-core v0.1.29
   Compiling foreign-types v0.3.2
   Compiling tokio v1.20.1
   Compiling lock_api v0.4.7
   Compiling slab v0.4.7
   Compiling indexmap v1.9.1
   Compiling atomic v0.5.1
   Compiling generic-array v0.14.6
   Compiling proc-macro2-diagnostics v0.9.1
   Compiling cookie v0.16.0
   Compiling uncased v0.9.7
   Compiling figment v0.10.6
   Compiling multer v2.0.3
   Compiling rocket v0.5.0-rc.2
   Compiling libsqlite3-sys v0.22.2
   Compiling http v0.2.8
   Compiling want v0.3.0
   Compiling tracing v0.1.36
   Compiling openssl-sys v0.9.80
   Compiling libz-sys v1.1.8
   Compiling curl-sys v0.4.60+curl-7.88.1
   Compiling stable-pattern v0.1.0
   Compiling socket2 v0.4.4
   Compiling getrandom v0.2.7
   Compiling mio v0.8.4
   Compiling num_cpus v1.13.1
   Compiling signal-hook-registry v1.4.0
   Compiling vmm-sys-util v0.11.1
   Compiling dirs-sys v0.3.7
   Compiling atty v0.2.14
   Compiling tempfile v3.3.0
   Compiling rand_core v0.6.3
   Compiling dirs v4.0.0
   Compiling parking_lot v0.12.1
   Compiling rand_chacha v0.3.1
   Compiling http-body v0.4.5
   Compiling time v0.3.13
   Compiling kvm-bindings v0.6.0
   Compiling scheduled-thread-pool v0.2.6
   Compiling rand v0.8.5
   Compiling r2d2 v0.8.10
   Compiling block-buffer v0.10.2
   Compiling crypto-common v0.1.6
   Compiling universal-hash v0.4.1
   Compiling cipher v0.3.0
   Compiling aead v0.4.3
   Compiling polyval v0.5.3
   Compiling digest v0.10.3
   Compiling ctr v0.8.0
   Compiling aes v0.7.5
   Compiling ghash v0.4.4
   Compiling hmac v0.12.1
   Compiling sha2 v0.10.2
   Compiling hkdf v0.12.3
   Compiling aes-gcm v0.9.4
   Compiling futures v0.3.23
   Compiling hyper v0.14.20
   Compiling devise_core v0.3.1
   Compiling tokio-macros v1.8.0
   Compiling pear_codegen v0.2.3
   Compiling diesel_derives v1.4.1
   Compiling ref-cast-impl v1.0.9
   Compiling async-stream-impl v0.3.3
   Compiling openssl-macros v0.1.0
   Compiling devise_codegen v0.3.1
   Compiling async-stream v0.3.3
   Compiling pear v0.2.3
   Compiling devise v0.3.1
   Compiling rocket_sync_db_pools_codegen v0.1.0-rc.2
   Compiling rocket_http v0.5.0-rc.2
   Compiling diesel v1.4.8
   Compiling rocket_codegen v0.5.0-rc.2
   Compiling tokio-util v0.7.3
   Compiling tokio-stream v0.1.9
   Compiling migrations_internals v1.4.1
   Compiling migrations_macros v1.4.2
   Compiling toml v0.5.9
   Compiling ubyte v0.10.2
   Compiling serde-big-array v0.4.1
   Compiling bincode v1.3.3
   Compiling serde_bytes v0.11.7
   Compiling uuid v0.8.2
   Compiling h2 v0.3.14
   Compiling kbs-types v0.2.0
   Compiling diesel_migrations v1.4.0
   Compiling rocket_sync_db_pools v0.1.0-rc.2
   Compiling reference-kbs v0.1.0 (/home/ecl/reference-kbs)
    Finished `dev` profile [unoptimized + debuginfo] target(s) in 18.91s
     Running `target/debug/reference-kbs`
Error: database pool init error for pool named `diesel`
   >> timed out waiting for connection: unable to open database file
   >> missing database fairing for `reference_kbs::Db`
thread 'main' panicked at src/main.rs:313:43:
database connection
stack backtrace:
   0:     0x58a6e4ef74da - std::backtrace_rs::backtrace::libunwind::trace::h99efb0985cae5d78
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/std/src/../../backtrace/src/backtrace/libunwind.rs:116:5
   1:     0x58a6e4ef74da - std::backtrace_rs::backtrace::trace_unsynchronized::he2c1aa63b3f7fad8
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
   2:     0x58a6e4ef74da - std::sys::backtrace::_print_fmt::h8a221d40f5e0f88b
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/std/src/sys/backtrace.rs:66:9
   3:     0x58a6e4ef74da - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h304520fd6a30aa07
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/std/src/sys/backtrace.rs:39:26
   4:     0x58a6e4f1cc5b - core::fmt::rt::Argument::fmt::h5da9c218ec984eaf
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/core/src/fmt/rt.rs:177:76
   5:     0x58a6e4f1cc5b - core::fmt::write::hf5713710ce10ff22
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/core/src/fmt/mod.rs:1178:21
   6:     0x58a6e4ef4403 - std::io::Write::write_fmt::hda708db57927dacf
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/std/src/io/mod.rs:1823:15
   7:     0x58a6e4ef8682 - std::sys::backtrace::BacktraceLock::print::hbcdbec4d97c91528
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/std/src/sys/backtrace.rs:42:9
   8:     0x58a6e4ef8682 - std::panicking::default_hook::{{closure}}::he1ad87607d0c11c5
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/std/src/panicking.rs:266:22
   9:     0x58a6e4ef82ee - std::panicking::default_hook::h81c8cd2e7c59ee33
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/std/src/panicking.rs:293:9
  10:     0x58a6e4ef8f0f - std::panicking::rust_panic_with_hook::had2118629c312a4a
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/std/src/panicking.rs:797:13
  11:     0x58a6e4ef8bf7 - std::panicking::begin_panic_handler::{{closure}}::h7fa5985d111bafa2
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/std/src/panicking.rs:671:13
  12:     0x58a6e4ef79b9 - std::sys::backtrace::__rust_end_short_backtrace::h704d151dbefa09c5
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/std/src/sys/backtrace.rs:170:18
  13:     0x58a6e4ef8884 - rust_begin_unwind
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/std/src/panicking.rs:662:5
  14:     0x58a6e4754d03 - core::panicking::panic_fmt::h3eea515d05f7a35e
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/core/src/panicking.rs:74:14
  15:     0x58a6e4754ccb - core::panicking::panic_display::h43c6507275b9b865
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/core/src/panicking.rs:264:5
  16:     0x58a6e4754ccb - core::option::expect_failed::h6d726c0eb3b486db
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/core/src/option.rs:2025:5
  17:     0x58a6e48fef2c - core::option::Option<T>::expect::h39b6ee42a86f24f3
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/core/src/option.rs:928:21
  18:     0x58a6e4861ac7 - reference_kbs::run_migrations::{{closure}}::hd26fe0b56e356811
                               at /home/ecl/reference-kbs/src/main.rs:313:16
  19:     0x58a6e4871ced - <futures_util::future::future::map::Map<Fut,F> as core::future::future::Future>::poll::h90f56efdd50df955
                               at /home/ecl/.cargo/registry/src/index.crates.io-6f17d22bba15001f/futures-util-0.3.23/src/future/future/map.rs:55:37
  20:     0x58a6e4871301 - <futures_util::future::future::Map<Fut,F> as core::future::future::Future>::poll::hf174526c262b7c30
                               at /home/ecl/.cargo/registry/src/index.crates.io-6f17d22bba15001f/futures-util-0.3.23/src/lib.rs:91:13
  21:     0x58a6e49f79a0 - <core::pin::Pin<P> as core::future::future::Future>::poll::hcf7a880648286e2f
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/core/src/future/future.rs:123:9
  22:     0x58a6e4ac7be0 - <rocket::fairing::ad_hoc::AdHoc as rocket::fairing::Fairing>::on_ignite::{{closure}}::h1dd9ee0c8a6e61e8
                               at /home/ecl/.cargo/registry/src/index.crates.io-6f17d22bba15001f/rocket-0.5.0-rc.2/src/fairing/ad_hoc.rs:264:60
  23:     0x58a6e49f79a0 - <core::pin::Pin<P> as core::future::future::Future>::poll::hcf7a880648286e2f
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/core/src/future/future.rs:123:9
  24:     0x58a6e4ac42b2 - rocket::fairing::fairings::Fairings::handle_ignite::{{closure}}::h616e0bdc9eb81ab5
                               at /home/ecl/.cargo/registry/src/index.crates.io-6f17d22bba15001f/rocket-0.5.0-rc.2/src/fairing/fairings.rs:120:58
  25:     0x58a6e4a5e19c - rocket::rocket::Rocket<rocket::phase::Build>::ignite::{{closure}}::ha4b4b5ede57da57a
                               at /home/ecl/.cargo/registry/src/index.crates.io-6f17d22bba15001f/rocket-0.5.0-rc.2/src/rocket.rs:508:46
  26:     0x58a6e491c1a9 - rocket::rocket::Rocket<P>::launch::{{closure}}::hc32b758a90da3abe
                               at /home/ecl/.cargo/registry/src/index.crates.io-6f17d22bba15001f/rocket-0.5.0-rc.2/src/rocket.rs:893:57
  27:     0x58a6e4870753 - reference_kbs::main::{{closure}}::h2437217fe067b7fc
                               at /home/ecl/reference-kbs/src/main.rs:322:18
  28:     0x58a6e47cbf6f - tokio::park::thread::CachedParkThread::block_on::{{closure}}::hd436a9a8912479a8
                               at /home/ecl/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.20.1/src/park/thread.rs:263:54
  29:     0x58a6e48837d3 - tokio::coop::with_budget::{{closure}}::h08883fcce1e8291e
                               at /home/ecl/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.20.1/src/coop.rs:102:9
  30:     0x58a6e48bdc4a - std::thread::local::LocalKey<T>::try_with::hb71992066137471e
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/std/src/thread/local.rs:283:12
  31:     0x58a6e48bcf4a - std::thread::local::LocalKey<T>::with::h30975630b95a09d8
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/std/src/thread/local.rs:260:9
  32:     0x58a6e47cabe9 - tokio::coop::with_budget::h9fa35cfda085c6fe
                               at /home/ecl/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.20.1/src/coop.rs:95:5
  33:     0x58a6e47cabe9 - tokio::coop::budget::h4e5c35b6777528d6
                               at /home/ecl/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.20.1/src/coop.rs:72:5
  34:     0x58a6e47cabe9 - tokio::park::thread::CachedParkThread::block_on::h414acb75c702dda5
                               at /home/ecl/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.20.1/src/park/thread.rs:263:31
  35:     0x58a6e479d95d - tokio::runtime::enter::Enter::block_on::ha6a4004fe3f83a8a
                               at /home/ecl/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.20.1/src/runtime/enter.rs:152:13
  36:     0x58a6e47d6960 - tokio::runtime::thread_pool::ThreadPool::block_on::ha4d90c6f49f603ee
                               at /home/ecl/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.20.1/src/runtime/thread_pool/mod.rs:90:9
  37:     0x58a6e47c1f9e - tokio::runtime::Runtime::block_on::h65d5b90e377778ed
                               at /home/ecl/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.20.1/src/runtime/mod.rs:484:43
  38:     0x58a6e484e583 - rocket::async_run::hcb1bd964fd044462
                               at /home/ecl/.cargo/registry/src/index.crates.io-6f17d22bba15001f/rocket-0.5.0-rc.2/src/lib.rs:246:18
  39:     0x58a6e484e2e3 - rocket::async_main::h7baeae6ebdf38685
                               at /home/ecl/.cargo/registry/src/index.crates.io-6f17d22bba15001f/rocket-0.5.0-rc.2/src/lib.rs:267:5
  40:     0x58a6e48836cc - reference_kbs::main::h867ca81df3368cbd
                               at /home/ecl/reference-kbs/src/main.rs:322:18
  41:     0x58a6e47a0beb - core::ops::function::FnOnce::call_once::h05d7133d1567699c
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/core/src/ops/function.rs:250:5
  42:     0x58a6e48d07ae - std::sys::backtrace::__rust_begin_short_backtrace::h6217d660435f81c5
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/std/src/sys/backtrace.rs:154:18
  43:     0x58a6e4818d71 - std::rt::lang_start::{{closure}}::h1ca3c3849bac4298
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/std/src/rt.rs:164:18
  44:     0x58a6e4eefd40 - core::ops::function::impls::<impl core::ops::function::FnOnce<A> for &F>::call_once::h08ecba131ab90ec4
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/core/src/ops/function.rs:284:13
  45:     0x58a6e4eefd40 - std::panicking::try::do_call::hf33a59fd8ce953f4
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/std/src/panicking.rs:554:40
  46:     0x58a6e4eefd40 - std::panicking::try::h5005ce80ce949fd8
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/std/src/panicking.rs:518:19
  47:     0x58a6e4eefd40 - std::panic::catch_unwind::hfbae19e2e2c5b7ed
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/std/src/panic.rs:345:14
  48:     0x58a6e4eefd40 - std::rt::lang_start_internal::{{closure}}::ha0331c3690741813
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/std/src/rt.rs:143:48
  49:     0x58a6e4eefd40 - std::panicking::try::do_call::hcdcbdb616b4d0295
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/std/src/panicking.rs:554:40
  50:     0x58a6e4eefd40 - std::panicking::try::h3f2f1725a07d2256
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/std/src/panicking.rs:518:19
  51:     0x58a6e4eefd40 - std::panic::catch_unwind::h51869e04b56b2dc3
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/std/src/panic.rs:345:14
  52:     0x58a6e4eefd40 - std::rt::lang_start_internal::h4d90db0530245041
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/std/src/rt.rs:143:20
  53:     0x58a6e4818d4a - std::rt::lang_start::hc2882f56c0de633e
                               at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/std/src/rt.rs:163:17
  54:     0x58a6e48836fe - main
  55:     0x76219382a1ca - <unknown>
  56:     0x76219382a28b - __libc_start_main
  57:     0x58a6e4755875 - _start
  58:                0x0 - <unknown>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant