-
Bug
-
Resolution: Done
-
Major
-
None
-
None
-
False
-
False
-
-
Undefined
-
See upstream issue for more details:
https://issues.apache.org/jira/browse/DISPATCH-1988
-------------
When the router receives two transfer frames back to back -
- First transfer frame is an empty with more=true
- Second transfer frame is also empty but with more=false
- Second transfer frame is also empty with more=false and abort=true
- Or - the client could send just one empty transfer frame with more=false, abort=false
Under these conditions, the router crashes with the following backtrace -
Core was generated by `/usr/sbin/qdrouterd -c /opt/app/qpid/etc/qpid-dispatch/qdrouterd.conf'. Program terminated with signal 11, Segmentation fault. #0 0x00007ff147436882 in qd_message_add_fanout (in_msg=in_msg@entry=0x7ff13529cec8, out_msg=0x7ff1348e15c8) at /usr/src/debug/qpid-dispatch-1.13.0/src/message.c:1172 1172 DEQ_INSERT_TAIL(content->buffers, content->pending); Missing separate debuginfos, use: debuginfo-install cyrus-sasl-lib-2.1.26-23.el7.x86_64 glibc-2.17-307.el7.1.x86_64 keyutils-libs-1.5.8-3.el7.x86_64 krb5-libs-1.15.1-46.el7.x86_64 libcom_err-1.42.9-17.el7.x86_64 libdb-5.3.21-25.el7.x86_64 libffi-3.0.13-19.el7.x86_64 libselinux-2.5-15.el7.x86_64 libwebsockets-2.4.2-2.el7.x86_64 nss-softokn-freebl-3.44.0-8.el7_7.x86_64 openssl-libs-1.0.2k-19.el7.x86_64 pcre-8.32-17.el7.x86_64 python-libs-2.7.5-88.el7.x86_64 zlib-1.2.7-18.el7.x86_64 (gdb) bt #0 0x00007ff147436882 in qd_message_add_fanout (in_msg=in_msg@entry=0x7ff13529cec8, out_msg=0x7ff1348e15c8) at /usr/src/debug/qpid-dispatch-1.13.0/src/message.c:1172 #1 0x00007ff147456a29 in qdr_forward_new_delivery_CT (core=core@entry=0x26bcc80, in_dlv=in_dlv@entry=0x7ff108688e48, out_link=0x7ff125fd8cc8, msg=0x7ff13529cec8) at /usr/src/debug/qpid-dispatch-1.13.0/src/router_core/forwarder.c:179 #2 0x00007ff1474626b7 in qdr_link_deliver_CT (core=0x26bcc80, action=0x27cd888, discard=<optimized out>) at /usr/src/debug/qpid-dispatch-1.13.0/src/router_core/transfer.c:687 #3 0x00007ff14745ddbd in router_core_thread (arg=0x26bcc80) at /usr/src/debug/qpid-dispatch-1.13.0/src/router_core/router_core_thread.c:193 #4 0x00007ff146d95ea5 in start_thread () from /lib64/libpthread.so.0 #5 0x00007ff1460bb96d in ?? () from /lib64/libc.so.6 #6 0x0000000000000000 in ?? ()