Skip to content
This repository has been archived by the owner on Apr 2, 2018. It is now read-only.

"other was less than the current instant" when under load #27

Open
insanitybit opened this issue Jun 29, 2017 · 0 comments
Open

"other was less than the current instant" when under load #27

insanitybit opened this issue Jun 29, 2017 · 0 comments

Comments

@insanitybit
Copy link

I have a service that uses a single Timer instance repeatedly. Under significant load I begin to see panics with:

"thread 'visibility_extender' panicked at 'other was less than the current instant', /checkout/src/libstd/sys/unix/time.rs:276"

Here is the output with RUST_BACKTRACE=1

   0: std::sys::imp::backtrace::tracing::imp::unwind_backtrace
             at /checkout/src/libstd/sys/unix/backtrace/tracing/gcc_s.rs:49
   1: std::sys_common::backtrace::_print
             at /checkout/src/libstd/sys_common/backtrace.rs:71
   2: std::panicking::default_hook::{{closure}}
             at /checkout/src/libstd/sys_common/backtrace.rs:60
             at /checkout/src/libstd/panicking.rs:355
   3: std::panicking::default_hook
             at /checkout/src/libstd/panicking.rs:371
   4: std::panicking::rust_panic_with_hook
             at /checkout/src/libstd/panicking.rs:549
   5: std::panicking::begin_panic
             at /checkout/src/libstd/panicking.rs:511
   6: <std::time::Instant as core::ops::arith::Sub>::sub
             at /checkout/src/libstd/sys/unix/time.rs:276
             at /checkout/src/libcore/result.rs:707
             at /checkout/src/libstd/sys/unix/time.rs:275
             at /checkout/src/libstd/time/mod.rs:184
             at /checkout/src/libstd/time/mod.rs:249
   7: <tokio_timer::timer::Sleep as futures::future::Future>::poll
             at /home/indie/.cargo/registry/src/github.heygears.com-1ecc6299db9ec823/tokio-timer-0.1.1/src/timer.rs:207
   8: <futures::future::chain::Chain<A, B, C>>::poll
             at /home/indie/.cargo/registry/src/github.heygears.com-1ecc6299db9ec823/futures-0.1.14/src/future/chain.rs:26
   9: <futures::future::then::Then<A, B, F> as futures::future::Future>::poll
             at /home/indie/.cargo/registry/src/github.heygears.com-1ecc6299db9ec823/futures-0.1.14/src/future/then.rs:32
  10: <futures::future::select::Select<A, B> as futures::future::Future>::poll
             at /home/indie/.cargo/registry/src/github.heygears.com-1ecc6299db9ec823/futures-0.1.14/src/future/select.rs:48
  11: <futures::future::map::Map<A, F> as futures::future::Future>::poll
             at /home/indie/.cargo/registry/src/github.heygears.com-1ecc6299db9ec823/futures-0.1.14/src/future/map.rs:30
  12: <futures::task_impl::Spawn<F>>::poll_future_notify::{{closure}}
             at /home/indie/.cargo/registry/src/github.heygears.com-1ecc6299db9ec823/futures-0.1.14/src/task_impl/mod.rs:291
  13: <futures::task_impl::Spawn<T>>::enter::{{closure}}
             at /home/indie/.cargo/registry/src/github.heygears.com-1ecc6299db9ec823/futures-0.1.14/src/task_impl/mod.rs:352
  14: futures::task_impl::std::set
             at /home/indie/.cargo/registry/src/github.heygears.com-1ecc6299db9ec823/futures-0.1.14/src/task_impl/std/mod.rs:90
  15: <futures::task_impl::Spawn<T>>::enter
             at /home/indie/.cargo/registry/src/github.heygears.com-1ecc6299db9ec823/futures-0.1.14/src/task_impl/mod.rs:352
  16: <futures::task_impl::Spawn<F>>::poll_future_notify
             at /home/indie/.cargo/registry/src/github.heygears.com-1ecc6299db9ec823/futures-0.1.14/src/task_impl/mod.rs:291
  17: futures::task_impl::std::<impl futures::task_impl::Spawn<F>>::wait_future
             at /home/indie/.cargo/registry/src/github.heygears.com-1ecc6299db9ec823/futures-0.1.14/src/task_impl/std/mod.rs:255
  18: futures::future::Future::wait
             at /home/indie/.cargo/registry/src/github.heygears.com-1ecc6299db9ec823/futures-0.1.14/src/future/mod.rs:285
  19: queue_delay_app::util::publish
             at src/util.rs:155
  20: queue_delay_app::delay::DelayMessageProcessor::spawn::{{closure}}::{{closure}}
             at src/delay.rs:107
  21: core::ops::function::FnOnce::call_once
             at /checkout/src/libcore/ops/function.rs:143
  22: <std::panic::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once
             at /checkout/src/libstd/panic.rs:296
  23: std::panicking::try::do_call
             at /checkout/src/libstd/panicking.rs:454
  24: __rust_maybe_catch_panic
             at /checkout/src/libpanic_unwind/lib.rs:98
  25: std::panicking::try
             at /checkout/src/libstd/panicking.rs:433
  26: std::panic::catch_unwind
             at /checkout/src/libstd/panic.rs:361
  27: queue_delay_app::delay::DelayMessageProcessor::spawn::{{closure}}
             at src/delay.rs:62
mwanner added a commit to mwanner/tokio-timer that referenced this issue Oct 15, 2017
# for free to subscribe to this conversation on GitHub. Already have an account? #.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant