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

Odd crash on Mac OS X with ZeroMQ 4.0.6 #138

Open
Kentzo opened this issue Aug 22, 2015 · 1 comment
Open

Odd crash on Mac OS X with ZeroMQ 4.0.6 #138

Kentzo opened this issue Aug 22, 2015 · 1 comment

Comments

@Kentzo
Copy link

Kentzo commented Aug 22, 2015

This is an odd crash that happens sporadically:

0 libsystem_kernel.dylib 0x00007fff8debcc82 __kill + 10
1 libsystem_platform.dylib 0x00007fff88730f1a _sigtramp + 26
2 ??? 000000000000000000 0 + 0
3 libsystem_c.dylib 0x00007fff8b090b53 abort + 129
4 libsystem_malloc.dylib 0x00007fff8b0c41cb free + 428
5 libzmq.4.dylib 0x0000000112175c30 __gnu_cxx::new_allocatorstd::Rb_tree_node<zmq::pipe_t* >::deallocate(std::Rb_tree_nodezmq::pipe_t*, unsigned long) + 32 (new_allocator.h:97)
6 libzmq.4.dylib 0x0000000112175c02 std::Rb_tree<zmq::pipe_t, zmq::pipe_t
, std::_Identityzmq::pipe_t_, std::lesszmq::pipe_t*, std::allocatorzmq::pipe_t* >::M_put_node(std::Rb_tree_nodezmq::pipe_t*) + 50 (stl_tree.h:373)
7 libzmq.4.dylib 0x0000000112175b61 std::Rb_tree<zmq::pipe_t, zmq::pipe_t
, std::_Identityzmq::pipe_t_, std::lesszmq::pipe_t*, std::allocatorzmq::pipe_t* >::M_destroy_node(std::Rb_tree_nodezmq::pipe_t*) + 81 (stl_tree.h:404)
8 libzmq.4.dylib 0x0000000112175d1b std::Rb_tree<zmq::pipe_t, zmq::pipe_t
, std::_Identityzmq::pipe_t_, std::lesszmq::pipe_t*, std::allocatorzmq::pipe_t* >::M_erase(std::Rb_tree_nodezmq::pipe_t*) + 91 (stl_tree.h:1328)
9 libzmq.4.dylib 0x00000001121759d5 std::Rb_tree<zmq::pipe_t, zmq::pipe_t
, std::_Identityzmq::pipe_t_, std::lesszmq::pipe_t*, std::allocatorzmq::pipe_t* >::clear() + 37 (stl_tree.h:714)
10 libzmq.4.dylib 0x00000001121758a2 std::_Rb_tree<zmq::pipe_t*, zmq::pipe_t*, std::_Identityzmq::pipe_t*, std::lesszmq::pipe_t*, std::allocatorzmq::pipe_t* >::erase(std::Rb_tree_iteratorzmq::pipe_t*, std::Rb_tree_iteratorzmq::pipe_t*) + 114 (stl_tree.h:1339)
11 libzmq.4.dylib 0x0000000112175785 std::Rb_tree<zmq::pipe_t*, zmq::pipe_t*, std::Identityzmq::pipe_t*, std::lesszmq::pipe_t*, std::allocatorzmq::pipe_t* >::erase(zmq::pipe_t* const&) + 101 (stl_tree.h:1277)
12 libzmq.4.dylib 0x000000011217551d std::set<zmq::pipe_t*, std::lesszmq::pipe_t*, std::allocatorzmq::pipe_t* >::erase(zmq::pipe_t* const&) + 29 (stl_set.h:373)
13 libzmq.4.dylib 0x000000011218a24f zmq::session_base_t::pipe_terminated(zmq::pipe_t
) + 303 (session_base.cpp:215)
14 libzmq.4.dylib 0x000000011218a38f non-virtual thunk to zmq::session_base_t::pipe_terminated(zmq::pipe_t
) + 47 (session_base.cpp:230)
15 libzmq.4.dylib 0x000000011217fb93 zmq::pipe_t::process_pipe_term_ack() + 163 (pipe.cpp:313)
16 libzmq.4.dylib 0x000000011217840c zmq::object_t::process_command(zmq::command_t&) + 364 (object.cpp:108)
17 libzmq.4.dylib 0x0000000112169c2e zmq::io_thread_t::in_event() + 126 (io_thread.cpp:73)
18 libzmq.4.dylib 0x0000000112169d0c non-virtual thunk to zmq::io_thread_t::in_event() + 28 (io_thread.cpp:78)
19 libzmq.4.dylib 0x000000011216d6a3 zmq::kqueue_t::loop() + 803 (kqueue.cpp:199)
20 libzmq.4.dylib 0x000000011216d345 zmq::kqueue_t::worker_routine(void
) + 21 (kqueue.cpp:212)
21 libzmq.4.dylib 0x00000001121a246c thread_routine(void
) + 284 (thread.cpp:82)
22 libsystem_pthread.dylib 0x00007fff8af96268 _pthread_body + 131
23 libsystem_pthread.dylib 0x00007fff8af961e5 _pthread_start + 176
24 libsystem_pthread.dylib 0x00007fff8af9441d thread_start + 13

I've seen it multiple times, stack trace was the same. However I didn?t find any reproducible patter before it happens.

Our application is cross-platform (Linux, Windows, OSX) but we never seen anything like that on other platforms.

@hintjens
Copy link
Member

Please report such issues against libzmq master, thanks.
On 22 Aug 2015 20:53, "Ilya Kulakov" notifications@github.com wrote:

This is an odd crash that happens sporadically:

0 libsystem_kernel.dylib 0x00007fff8debcc82 __kill + 10
1 libsystem_platform.dylib 0x00007fff88730f1a _sigtramp + 26
2 ??? 000000000000000000 0 + 0
3 libsystem_c.dylib 0x00007fff8b090b53 abort + 129
4 libsystem_malloc.dylib 0x00007fff8b0c41cb free + 428
5 libzmq.4.dylib 0x0000000112175c30
__gnu_cxx::new_allocatorstd::_Rb_tree_node<zmq::pipe_t*

::deallocate(std::Rb_tree_nodezmq::pipe_t*
, unsigned long) + 32 (new_allocator.h:97) 6 libzmq.4.dylib
0x0000000112175c02 std::Rb_tree<zmq::pipe_t, zmq::pipe_t
,
std::Identityzmq::pipe_t_, std::lesszmq::pipe_t,
std::allocatorzmq::pipe_t
>::_M_put_node(std::Rb_tree_nodezmq::pipe_t*
) + 50 (stl_tree.h:373) 7 libzmq.4.dylib 0x0000000112175b61
std::Rb_tree<zmq::pipe_t, zmq::pipe_t
, std::Identityzmq::pipe_t_,
std::lesszmq::pipe_t
, std::allocatorzmq::pipe_t

::M_destroy_node(std::Rb_tree_nodezmq::pipe_t*
) + 81 (stl_tree.h:404) 8 libzmq.4.dylib 0x0000000112175d1b
std::Rb_tree<zmq::pipe_t, zmq::pipe_t
, std::Identityzmq::pipe_t_,
std::lesszmq::pipe_t
, std::allocatorzmq::pipe_t

::M_erase(std::Rb_tree_nodezmq::pipe_t*
) + 91 (stl_tree.h:1328) 9 libzmq.4.dylib 0x00000001121759d5
std::Rb_tree<zmq::pipe_t, zmq::pipe_t
, std::Identityzmq::pipe_t_,
std::lesszmq::pipe_t
, std::allocatorzmq::pipe_t
>::clear() + 37
(stl_tree.h:714)
10 libzmq.4.dylib 0x00000001121758a2 std::Rb_tree, std::lesszmq::pipe_t,
std::allocatorzmq::pipe_t
>::erase(std::Rb_tree_iteratorzmq::pipe_t,
std::Rb_tree_iteratorzmq::pipe_t) + 114 (stl_tree.h:1339)
11 libzmq.4.dylib 0x0000000112175785 std::Rb_tree, std::lesszmq::pipe_t,
std::allocatorzmq::pipe_t
>::erase(zmq::pipe_t* const&) + 101
(stl_tree.h:1277)
12 libzmq.4.dylib 0x000000011217551d std::set, std::allocatorzmq::pipe_t*
::erase(zmq::pipe_t* const&) + 29 (stl_set.h:373)
13 libzmq.4.dylib 0x000000011218a24f
zmq::session_base_t::pipe_terminated(zmq::pipe_t
) + 303 (session_base.cpp:215) 14 libzmq.4.dylib 0x000000011218a38f
non-virtual thunk to zmq::session_base_t::pipe_terminated(zmq::pipe_t
) +
47 (session_base.cpp:230)
15 libzmq.4.dylib 0x000000011217fb93 zmq::pipe_t::process_pipe_term_ack()

  • 163 (pipe.cpp:313)
    16 libzmq.4.dylib 0x000000011217840c
    zmq::object_t::process_command(zmq::command_t&) + 364 (object.cpp:108)
    17 libzmq.4.dylib 0x0000000112169c2e zmq::io_thread_t::in_event() + 126
    (io_thread.cpp:73)
    18 libzmq.4.dylib 0x0000000112169d0c non-virtual thunk to
    zmq::io_thread_t::in_event() + 28 (io_thread.cpp:78)
    19 libzmq.4.dylib 0x000000011216d6a3 zmq::kqueue_t::loop() + 803
    (kqueue.cpp:199)
    20 libzmq.4.dylib 0x000000011216d345 zmq::kqueue_t::worker_routine(void
    ) + 21 (kqueue.cpp:212) 21 libzmq.4.dylib 0x00000001121a246c
    thread_routine(void
    ) + 284 (thread.cpp:82)
    22 libsystem_pthread.dylib 0x00007fff8af96268 _pthread_body + 131
    23 libsystem_pthread.dylib 0x00007fff8af961e5 _pthread_start + 176
    24 libsystem_pthread.dylib 0x00007fff8af9441d thread_start + 13

I've seen it multiple times, stack trace was the same. However I didn?t
find any reproducible patter before it happens.

Our application is cross-platform (Linux, Windows, OSX) but we never seen
anything like that on other platforms.


Reply to this email directly or view it on GitHub
#138.

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

2 participants