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

Assertion failure when using ZMQ_STREAM on 4.1.3 #1644

Closed
jens-auer opened this issue Nov 19, 2015 · 1 comment
Closed

Assertion failure when using ZMQ_STREAM on 4.1.3 #1644

jens-auer opened this issue Nov 19, 2015 · 1 comment

Comments

@jens-auer
Copy link
Contributor

jens-auer commented Nov 19, 2015

We are using ZMQ_STREAMS to receive data from clients. From time to time, we see an assertion failure:

#0  0x00007fa8341145d7 in raise () from /lib64/libc.so.6
#1  0x00007fa834115cc8 in abort () from /lib64/libc.so.6
#2  0x00007fa83410d546 in __assert_fail_base () from /lib64/libc.so.6
#3  0x00007fa83410d5f2 in __assert_fail () from /lib64/libc.so.6
#4  0x00007fa834f0097a in zmq::msg_t::set_metadata (this=this@entry=0x7fa82c06ca88, metadata_=0x7fa82c06eb30) at src/msg.cpp:296
#5  0x00007fa834f1c270 in zmq::stream_engine_t::push_raw_msg_to_session (this=0x7fa82c06a600, msg_=0x7fa82c06ca88) at src/stream_engine.cpp:846
#6  0x00007fa834f1cff5 in zmq::stream_engine_t::restart_input (this=0x7fa82c06a600) at src/stream_engine.cpp:428
#7  0x00007fa834f11452 in zmq::session_base_t::write_activated (this=0x2265310, pipe_=0x2264b00) at src/session_base.cpp:278
#8  0x00007fa834efa46c in zmq::io_thread_t::in_event (this=0x2249be0) at src/io_thread.cpp:83
#9  0x00007fa834ef93de in zmq::epoll_t::loop (this=0x22485b0) at src/epoll.cpp:176
#10 0x00007fa834f25030 in thread_routine (arg_=0x2248630) at src/thread.cpp:96
#11 0x00007fa834cc6df5 in start_thread () from /lib64/libpthread.so.0
#12 0x00007fa8341d51ad in clone () from /lib64/libc.so.6

The code basically reads polls on the socket in a Reactor, and then reads all available message parts from the socket with ZMQ_DONTWAIT. Does anybody know this problem? I don't know if we cause the problem, but I tried valgrind to rule out memory corruption problems.

The same happens with the current master branch:

#0  0x00007f8ff2c185d7 in raise () from /lib64/libc.so.6
#1  0x00007f8ff2c19cc8 in abort () from /lib64/libc.so.6
#2  0x00007f8ff2c11546 in __assert_fail_base () from /lib64/libc.so.6
#3  0x00007f8ff2c115f2 in __assert_fail () from /lib64/libc.so.6
#4  0x00007f8ff3a07bb9 in zmq::msg_t::set_metadata (this=this@entry=0x7f8fec06c668, metadata_=0x7f8fec06ec10) at src/msg.cpp:390
#5  0x00007f8ff3a25040 in zmq::stream_engine_t::push_raw_msg_to_session (this=0x7f8fec06c730, msg_=0x7f8fec06c668) at src/stream_engine.cpp:873
#6  0x00007f8ff3a25435 in zmq::stream_engine_t::restart_input (this=0x7f8fec06c730) at src/stream_engine.cpp:456
#7  0x00007f8ff3a190c2 in zmq::session_base_t::write_activated (this=0x16c0c50, pipe_=0x16c90f0) at src/session_base.cpp:284
#8  0x00007f8ff3a00eb4 in zmq::io_thread_t::in_event (this=0x16a2eb0) at src/io_thread.cpp:84
#9  0x00007f8ff39ffcde in zmq::epoll_t::loop (this=0x16a17c0) at src/epoll.cpp:178
#10 0x00007f8ff3a2d550 in thread_routine (arg_=0x16a1840) at src/thread.cpp:96
#11 0x00007f8ff37cadf5 in start_thread () from /lib64/libpthread.so.0
#12 0x00007f8ff2cd91ad in clone () from /lib64/libc.so.6
@bluca
Copy link
Member

bluca commented Mar 24, 2018

Fixed by #1643

@bluca bluca closed this as completed Mar 24, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants