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

Fix Tokio issue with version > 0.1.11 #2135

Closed
quentinlesceller opened this issue Dec 11, 2018 · 1 comment
Closed

Fix Tokio issue with version > 0.1.11 #2135

quentinlesceller opened this issue Dec 11, 2018 · 1 comment
Labels

Comments

@quentinlesceller
Copy link
Member

Related to #2105 and #2128.
Currently with tokio semver >0.1.11 we experienced the following issue when refreshing the outputs:

20181208 23:09:08.734 ERROR grin_util::logger -
thread 'tokio-runtime-worker-1' panicked at 'nested block_on: EnterError { reason: "attempted to run an executor while another executor is already running" }': libcore/result.rs:1009stack backtrace:
   0:     0x5587172a5aed - backtrace::backtrace::trace::h33a8de1a5de4f598
   1:     0x5587172a4d02 - <backtrace::capture::Backtrace as core::default::Default>::default::h13bf884e561085be
   2:     0x5587172a4d79 - backtrace::capture::Backtrace::new::h810796244ae4b8f2
   3:     0x558717217450 - grin_util::logger::send_panic_to_log::{{closure}}::h4131e8199612a48b
   4:     0x558717373896 - std::panicking::rust_panic_with_hook::h71214e7ce0f7ac01
                        at libstd/panicking.rs:480
   5:     0x5587173733e1 - std::panicking::continue_panic_fmt::ha8b8442f4ea9bcac
                        at libstd/panicking.rs:390
   6:     0x5587173732c5 - rust_begin_unwind
                        at libstd/panicking.rs:325
   7:     0x5587173bcd6c - core::panicking::panic_fmt::h0c93626b89c38af6
                        at libcore/panicking.rs:77
   8:     0x558716ed1d96 - core::result::unwrap_failed::hd6d647e647f9d65f
   9:     0x558716ed38ea - tokio::runtime::Runtime::block_on::h50c07489d8a34431
  10:     0x558716e9ffbd - grin_api::client::send_request::h58cd94e37f2486a3
  11:     0x558716d17e1a - grin_api::client::get::hbbd2dcbfaea3a4b9
  12:     0x558716d1074b - <grin_wallet::node_clients::http::HTTPNodeClient as grin_wallet::libwallet::types::NodeClient>::get_chain_height::ha4a82fe83f2fb5e3
  13:     0x558716b1ce83 - grin_wallet::libwallet::internal::updater::refresh_outputs::he67ca7e885c2c77a
  14:     0x558716ac3eb2 - <grin_wallet::libwallet::api::APIOwner<W, C, K>>::retrieve_summary_info::h962086bf4a07c49c
  15:     0x558716b47742 - <grin_wallet::controller::OwnerAPIHandler<T, C, K> as grin_api::router::Handler>::get::h8becc02a4b5c4a18
  16:     0x558716b5d300 - grin_api::router::Handler::call::h3592fee7f16fbddf
  17:     0x558716e22e78 - <grin_api::router::Router as hyper::service::service::Service>::call::hbbd603eab9d00eef
  18:     0x558716ee6fd5 - <hyper::proto::h1::dispatch::Server<S> as hyper::proto::h1::dispatch::Dispatch>::recv_msg::hf8e1c05dc0b5c7f7
  19:     0x558716ef2400 - <hyper::proto::h1::dispatch::Dispatcher<D, Bs, I, T>>::poll_catch::h0e93e88a5683ce62
  20:     0x558716e8f6ae - <hyper::server::conn::upgrades::UpgradeableConnection<I, S, E> as futures::future::Future>::poll::h03c736ccad93c676
  21:     0x558716efc28a - <hyper::server::conn::spawn_all::NewSvcTask<I, N, S, E, W> as futures::future::Future>::poll::h7c7480fa1a02b78a
  22:     0x558717089761 - futures::task_impl::std::set::hc4b047e2258852d7
  23:     0x55871708a195 - <futures::task_impl::Spawn<T>>::poll_future_notify::h6b8b942bdee24293
  24:     0x55871708d9e0 - std::panicking::try::do_call::h379db939d220e7ba
  25:     0x558717385c99 - __rust_maybe_catch_panic
                        at libpanic_unwind/lib.rs:102
  26:     0x55871708b9fb - tokio_threadpool::task::Task::run::hd407da1872c403cb
  27:     0x558717083eb5 - tokio_threadpool::worker::Worker::run_task::h735b3514c6e90b44
  28:     0x55871708352e - tokio_threadpool::worker::Worker::run::ha56b3a90b49df5c9
  29:     0x558717069f45 - <std::thread::local::LocalKey<T>>::with::h2e2f8722784589ba
  30:     0x55871706a098 - <std::thread::local::LocalKey<T>>::with::h65ffeee491ed9b24
  31:     0x558717069d72 - <std::thread::local::LocalKey<T>>::with::h2207b72bbb3594a7
  32:     0x55871706cd5d - tokio::runtime::builder::Builder::build::{{closure}}::h33c8bf677f817e8b
  33:     0x55871708accc - <std::thread::local::LocalKey<T>>::with::h17a742e397d4af0c
  34:     0x55871708ae31 - <std::thread::local::LocalKey<T>>::with::h70802f72c7300a39
  35:     0x55871708e31b - std::sys_common::backtrace::__rust_begin_short_backtrace::he05acf4f68e09c1c
  36:     0x55871708d99b - std::panicking::try::do_call::h2a038064618082be
  37:     0x558717385c99 - __rust_maybe_catch_panic
                        at libpanic_unwind/lib.rs:102
  38:     0x55871708834f - <F as alloc::boxed::FnBox<A>>::call_box::h4ce92ff10f8c6050
  39:     0x55871736fe2d - <alloc::boxed::Box<(dyn alloc::boxed::FnBox<A, Output=R> + 'a)> as core::ops::function::FnOnce<A>>::call_once::he3acfc8f1203786f
                        at liballoc/boxed.rs:682
                         - std::sys_common::thread::start_thread::h5213f803a61d7811
                        at libstd/sys_common/thread.rs:24
  40:     0x55871735aeb5 - std::sys::unix::thread::Thread::new::thread_start::he89121f566d2a8c7
                        at libstd/sys/unix/thread.rs:90
  41:     0x7fdaab6636b9 - start_thread
  42:     0x7fdaab18341c - clone
  43:                0x0 - <unknown>

One possible solution would be to get rid of tokio/hyper altogether (#2040).

@quentinlesceller
Copy link
Member Author

Closed for mimblewimble/grin-wallet#26.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant