zeromq / libzmq

ZeroMQ core engine in C++, implements ZMTP/3.1
https://www.zeromq.org
Mozilla Public License 2.0
9.71k stars 2.35k forks source link

After Upgrade to Libzmq-4.3.3 from 4.1.4 user process crash observed during user process bringdown #4387

Open srkvenkatesh opened 2 years ago

srkvenkatesh commented 2 years ago

Please use this template for reporting suspected bugs or requests for help.

Issue description

Process crash observed with libzmq-4.3.3 library during prorcess bringdown when node reload is issued

Environment

Minimal test code / Steps to reproduce the issue

  1. lib zmq 4.3.3 part of a process
  2. User process invokes zmq_poll()
  3. During reload of node, when a bring down is initiated, crash is observed with BT pointing inside libzmq code.

What's the actual result? (include assertion message & call stack if applicable)

Process Crash is observed.

Stacktrace:

0 0x00007fefa40b5920 in raise ()

from /home/venkat/Default/OPUSONE/ArubaOS_MM_syms/lib64/libc.so.6

1 0x00007fefa40b6b01 in abort ()

from /home/venkat/Default/OPUSONE/ArubaOS_MM_syms/lib64/libc.so.6

2 0x00007fefa40ae46d in __assert_fail_base ()

from /home/venkat/Default/OPUSONE/ArubaOS_MM_syms/lib64/libc.so.6

3 0x00007fefa40ae522 in __assert_fail ()

from /home/venkat/Default/OPUSONE/ArubaOS_MM_syms/lib64/libc.so.6

4 0x00007fefa70a5fd2 in mm_free (h=0x1bf8260, ptr=, caller=) at mm_main.c:224

5 0x00007fefa4efb0ff in zmq::yqueue_t<zmq::msg_t, 256, 64ul>::~yqueue_t() ()

from /home/venkat/Default/OPUSONE/ArubaOS_MM_syms/lib/libzmq.so.5

6 0x00007fefa4efb544 in zmq::ypipe_t<zmq::msg_t, 256>::~ypipe_t() ()

from /home/venkat/Default/OPUSONE/ArubaOS_MM_syms/lib/libzmq.so.5

7 0x00007fefa4efb580 in zmq::ypipe_t<zmq::msg_t, 256>::~ypipe_t() ()

from /home/venkat/Default/OPUSONE/ArubaOS_MM_syms/lib/libzmq.so.5

8 0x00007fefa4ef97d8 in zmq::pipe_t::process_hiccup(void*) ()

from /home/venkat/Default/OPUSONE/ArubaOS_MM_syms/lib/libzmq.so.5

9 0x00007fefa4ef101d in zmq::object_t::process_command(zmq::command_t const&) ()

from /home/venkat/Default/OPUSONE/ArubaOS_MM_syms/lib/libzmq.so.5

10 0x00007fefa4f14a07 in zmq::socket_base_t::process_commands(int, bool) ()

from /home/venkat/Default/OPUSONE/ArubaOS_MM_syms/lib/libzmq.so.5

11 0x00007fefa4f10d74 in zmq::socket_base_t::getsockopt(int, void, unsigned long) ()

from /home/venkat/Default/OPUSONE/ArubaOS_MM_syms/lib/libzmq.so.5

12 0x00007fefa4f39c7b in zmq_getsockopt ()

from /home/venkat/Default/OPUSONE/ArubaOS_MM_syms/lib/libzmq.so.5

13 0x00007fefa4f3b3a3 in zmq_poll ()

What's the expected result?

Dont expect a crash

srkvenkatesh commented 2 years ago

Please let me know if there exists a solution to avoid the crash