Uploaded image for project: 'Rust Driver'
  1. Rust Driver
  2. RUST-606

abort linked hashmap use too much stack space ?

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major - P3
    • Resolution: Gone away
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: None
    • Labels:
      None

      Description

      I have a random bug causing my program to crash sometime. I track it down finally and here the tracktrace:

       

      #0  __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51
      #1  0x00007f3aeef458b1 in __GI_abort () at abort.c:79
      #2  0x00007f3aeef8e907 in __libc_message (action=action@entry=do_abort, fmt=fmt@entry=0x7f3aef0bbbe8 "*** %s ***: %s terminated\n") at ../sysdeps/posix/libc_fatal.c:181
      #3  0x00007f3aef039e81 in __GI___fortify_fail_abort (need_backtrace=need_backtrace@entry=false, msg=msg@entry=0x7f3aef0bbbc6 "stack smashing detected") at fortify_fail.c:33
      #4  0x00007f3aef039e42 in __stack_chk_fail () at stack_chk_fail.c:29
      #5  0x00007f3aeef91174 in _IO_file_underflow_mmap (fp=<optimized out>) at fileops.c:670
      #6  0x0000557ad0170a20 in ?? ()
      #7  0x00007f39136e7a38 in ?? ()
      #8  0x00007f34f30d56f8 in ?? ()
      #9  0x00007f34fce749d0 in ?? ()
      #10 0x0000557acff63b11 in core::ptr::drop_in_place () at /rustc/f5230fbf76bafd86ee4376a0e26e551df8d17fec/library/core/src/ptr/mod.rs:175
      #11 core::ptr::drop_in_place () at /rustc/f5230fbf76bafd86ee4376a0e26e551df8d17fec/library/core/src/ptr/mod.rs:175
      #12 linked_hash_map::LinkedHashMap<K,V,S>::drop_entries (self=0x90) at /home/wolf/.cargo/registry/src/github.com-1ecc6299db9ec823/linked-hash-map-0.5.3/src/lib.rs:153
      #13 <linked_hash_map::LinkedHashMap<K,V,S> as core::ops::drop::Drop>::drop (self=0x90) at /home/wolf/.cargo/registry/src/github.com-1ecc6299db9ec823/linked-hash-map-0.5.3/src/lib.rs:808
      #14 0x0000557ad015de5c in core::ptr::drop_in_place () at /rustc/f5230fbf76bafd86ee4376a0e26e551df8d17fec/library/core/src/ptr/mod.rs:175
      #15 core::ptr::drop_in_place () at /rustc/f5230fbf76bafd86ee4376a0e26e551df8d17fec/library/core/src/ptr/mod.rs:175
      #16 core::ptr::drop_in_place () at /rustc/f5230fbf76bafd86ee4376a0e26e551df8d17fec/library/core/src/ptr/mod.rs:175
      #17 0x0000557acff55152 in core::ptr::drop_in_place () at /rustc/f5230fbf76bafd86ee4376a0e26e551df8d17fec/library/core/src/ptr/mod.rs:175
      #18 <alloc::vec::Vec<T> as core::ops::drop::Drop>::drop (self=0x7f38510ee200) at /rustc/f5230fbf76bafd86ee4376a0e26e551df8d17fec/library/alloc/src/vec.rs:2595
      #19 core::ptr::drop_in_place () at /rustc/f5230fbf76bafd86ee4376a0e26e551df8d17fec/library/core/src/ptr/mod.rs:175
      #20 core::ptr::drop_in_place () at /rustc/f5230fbf76bafd86ee4376a0e26e551df8d17fec/library/core/src/ptr/mod.rs:175
      #21 0x0000557acff63b11 in core::ptr::drop_in_place () at /rustc/f5230fbf76bafd86ee4376a0e26e551df8d17fec/library/core/src/ptr/mod.rs:175
      #22 core::ptr::drop_in_place () at /rustc/f5230fbf76bafd86ee4376a0e26e551df8d17fec/library/core/src/ptr/mod.rs:175
      #23 linked_hash_map::LinkedHashMap<K,V,S>::drop_entries (self=0x7f39136e7b00) at /home/wolf/.cargo/registry/src/github.com-1ecc6299db9ec823/linked-hash-map-0.5.3/src/lib.rs:153
      #24 <linked_hash_map::LinkedHashMap<K,V,S> as core::ops::drop::Drop>::drop (self=0x7f39136e7b00) at /home/wolf/.cargo/registry/src/github.com-1ecc6299db9ec823/linked-hash-map-0.5.3/src/lib.rs:808
      #25 0x0000557ad007bc0c in core::ptr::drop_in_place () at /rustc/f5230fbf76bafd86ee4376a0e26e551df8d17fec/library/core/src/ptr/mod.rs:175
      #26 core::ptr::drop_in_place () at /rustc/f5230fbf76bafd86ee4376a0e26e551df8d17fec/library/core/src/ptr/mod.rs:175
      #27 core::ptr::drop_in_place () at /rustc/f5230fbf76bafd86ee4376a0e26e551df8d17fec/library/core/src/ptr/mod.rs:175
      #28 0x0000557ad00e9c58 in mongodb::client::executor::<impl mongodb::client::Client>::execute_operation_on_connection::{{closure}} () at /home/wolf/.cargo/registry/src/github.com-1ecc6299db9ec823/mongodb-1.1.1/src/client/executor.rs:331
      #29 <core::future::from_generator::GenFuture<T> as core::future::future::Future>::poll (self=..., cx=<optimized out>) at /rustc/f5230fbf76bafd86ee4376a0e26e551df8d17fec/library/core/src/future/mod.rs:80
      #30 0x0000557ad00e31b1 in mongodb::client::executor::<impl mongodb::client::Client>::execute_operation_with_retry::{{closure}} () at /home/wolf/.cargo/registry/src/github.com-1ecc6299db9ec823/mongodb-1.1.1/src/client/executor.rs:105
      #31 <core::future::from_generator::GenFuture<T> as core::future::future::Future>::poll (self=..., cx=0x7f3aed2f1350) at /rustc/f5230fbf76bafd86ee4376a0e26e551df8d17fec/library/core/src/future/mod.rs:80
      #32 mongodb::client::executor::<impl mongodb::client::Client>::execute_operation::{{closure}} () at /home/wolf/.cargo/registry/src/github.com-1ecc6299db9ec823/mongodb-1.1.1/src/client/executor.rs:49
      #33 <core::future::from_generator::GenFuture<T> as core::future::future::Future>::poll (self=..., cx=0x7f3aed2f1350) at /rustc/f5230fbf76bafd86ee4376a0e26e551df8d17fec/library/core/src/future/mod.rs:80
      #34 0x0000557ad00b18be in mongodb::coll::Collection::insert_many::{{closure}} () at /home/wolf/.cargo/registry/src/github.com-1ecc6299db9ec823/mongodb-1.1.1/src/coll/mod.rs:457
      #35 <core::future::from_generator::GenFuture<T> as core::future::future::Future>::poll (self=..., cx=0x7f3aed2f1350) at /rustc/f5230fbf76bafd86ee4376a0e26e551df8d17fec/library/core/src/future/mod.rs:80
      #36 blender::db::DB::insert_all::{{closure}}::ManageTask::spawn::{{closure}} () at src/db.rs:418
      #37 <core::future::from_generator::GenFuture<T> as core::future::future::Future>::poll (self=..., cx=0x7f3aed2f1350) at /rustc/f5230fbf76bafd86ee4376a0e26e551df8d17fec/library/core/src/future/mod.rs:80
      #38 0x0000557ad010d0a0 in tokio::runtime::task::core::Core<T,S>::poll::{{closure}} (ptr=<optimized out>) at /home/wolf/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-0.2.22/src/runtime/task/core.rs:173
      #39 tokio::loom::std::unsafe_cell::UnsafeCell<T>::with_mut (self=<optimized out>, f=...) at /home/wolf/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-0.2.22/src/loom/std/unsafe_cell.rs:14
      #40 tokio::runtime::task::core::Core<T,S>::poll (self=0x7f39136e6620, header=<optimized out>) at /home/wolf/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-0.2.22/src/runtime/task/core.rs:158
      #41 tokio::runtime::task::harness::Harness<T,S>::poll::{{closure}} () at /home/wolf/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-0.2.22/src/runtime/task/harness.rs:107
      #42 core::ops::function::FnOnce::call_once () at /rustc/f5230fbf76bafd86ee4376a0e26e551df8d17fec/library/core/src/ops/function.rs:227
      #43 <std::panic::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once (self=..., _args=<optimized out>) at /rustc/f5230fbf76bafd86ee4376a0e26e551df8d17fec/library/std/src/panic.rs:322
      #44 0x0000557acfeb0dd5 in std::panicking::try::do_call (data=<optimized out>) at /rustc/f5230fbf76bafd86ee4376a0e26e551df8d17fec/library/std/src/panicking.rs:381
      #45 std::panicking::try (f=<error reading variable: access outside bounds of object referenced via synthetic pointer>) at /rustc/f5230fbf76bafd86ee4376a0e26e551df8d17fec/library/std/src/panicking.rs:345
      #46 std::panic::catch_unwind (f=<error reading variable: access outside bounds of object referenced via synthetic pointer>) at /rustc/f5230fbf76bafd86ee4376a0e26e551df8d17fec/library/std/src/panic.rs:396
      #47 tokio::runtime::task::harness::Harness<T,S>::poll (self=...) at /home/wolf/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-0.2.22/src/runtime/task/harness.rs:89
      #48 0x0000557ad074b0b9 in tokio::runtime::task::raw::RawTask::poll (self=...) at /home/wolf/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-0.2.22/src/runtime/task/raw.rs:66
      #49 tokio::runtime::task::Notified<S>::run (self=...) at /home/wolf/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-0.2.22/src/runtime/task/mod.rs:169
      #50 tokio::runtime::thread_pool::worker::Context::run_task::{{closure}} () at /home/wolf/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-0.2.22/src/runtime/thread_pool/worker.rs:353
      #51 tokio::coop::with_budget::{{closure}} (cell=0x7f3aed2f635c) at /home/wolf/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-0.2.22/src/coop.rs:127
      #52 std::thread::local::LocalKey<T>::try_with (self=<optimized out>, f=...) at /rustc/f5230fbf76bafd86ee4376a0e26e551df8d17fec/library/std/src/thread/local.rs:272
      #53 std::thread::local::LocalKey<T>::with (self=<optimized out>, f=...) at /rustc/f5230fbf76bafd86ee4376a0e26e551df8d17fec/library/std/src/thread/local.rs:248
      #54 0x0000557ad0764c82 in tokio::coop::with_budget (budget=..., f=...) at /home/wolf/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-0.2.22/src/coop.rs:120
      

      looking the stack is not big enough and I'm running on default, I expected this is a bug, the default stackspace should be enough, but I will try to increase the stack space somehow.

        Attachments

          Activity

            People

            Assignee:
            sam.rossi Samuel Rossi (Inactive)
            Reporter:
            plaskowski.stanislas@gmail.com Antoine N/A
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved: