Bug 1115582
| Summary: | dispatch segv during multi-sender startup | ||||||
|---|---|---|---|---|---|---|---|
| Product: | Red Hat Enterprise MRG | Reporter: | mick <mgoulish> | ||||
| Component: | qpid-proton | Assignee: | mick <mgoulish> | ||||
| Status: | CLOSED UPSTREAM | QA Contact: | MRG Quality Engineering <mrgqe-bugs> | ||||
| Severity: | high | Docs Contact: | |||||
| Priority: | unspecified | ||||||
| Version: | Development | CC: | jross | ||||
| Target Milestone: | --- | ||||||
| Target Release: | --- | ||||||
| Hardware: | Unspecified | ||||||
| OS: | Unspecified | ||||||
| Whiteboard: | |||||||
| Fixed In Version: | Doc Type: | Bug Fix | |||||
| Doc Text: | Story Points: | --- | |||||
| Clone Of: | Environment: | ||||||
| Last Closed: | 2025-02-10 03:36:16 UTC | Type: | Bug | ||||
| Regression: | --- | Mount Type: | --- | ||||
| Documentation: | --- | CRM: | |||||
| Verified Versions: | Category: | --- | |||||
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||
| Cloudforms Team: | --- | Target Upstream Version: | |||||
| Embargoed: | |||||||
| Attachments: |
|
||||||
This is also Jira PROTON-625 https://issues.apache.org/jira/browse/PROTON-625 This product has been discontinued or is no longer tracked in Red Hat Bugzilla. |
Created attachment 914240 [details] reproducer code & scripts -- see README I am attaching complete scripts and C source for repro. Please see README in the attached tar.gz for complete instructions. 1. start dispatch router 2. start 5 receivers -- each listening to 100 unique addrs. 3. start 5 sender, each sending (fast) to 500 unique addrs. About 2 out of 3 times, with recent Proton trunk code, the above sequence causes dispatch router to crash, producing the Biggest Backtrace Ever. It always looks like this: #0 0x0000003cf9879ad1 in _int_malloc (av=0x7f101c000020, bytes=16384) at malloc.c:4383 #1 0x0000003cf987a911 in __libc_malloc (bytes=16384) at malloc.c:3664 #2 0x00000039c6c1650a in pni_map_allocate () from /usr/lib64/libqpid-proton.so.2 #3 0x00000039c6c16a3a in pni_map_ensure () from /usr/lib64/libqpid-proton.so.2 #4 0x00000039c6c16c45 in pni_map_entry () from /usr/lib64/libqpid-proton.so.2 #5 0x00000039c6c16c64 in pni_map_entry () from /usr/lib64/libqpid-proton.so.2 #6 0x00000039c6c16c64 in pni_map_entry () from /usr/lib64/libqpid-proton.so.2 #7 0x00000039c6c16c64 in pni_map_entry () from /usr/lib64/libqpid-proton.so.2 #8 0x00000039c6c16c64 in pni_map_entry () from /usr/lib64/libqpid-proton.so.2 . . . . proton.so.2 #93555 0x00000039c6c16c64 in pni_map_entry () from /usr/lib64/libqpid-proton.so.2 #93556 0x00000039c6c16c64 in pni_map_entry () from /usr/lib64/libqpid-proton.so.2 #93557 0x00000039c6c16c64 in pni_map_entry () from /usr/lib64/libqpid-proton.so.2 #93558 0x00000039c6c16c64 in pni_map_entry () from /usr/lib64/libqpid-proton.so.2 #93559 0x00000039c6c16dc0 in pn_map_put () from /usr/lib64/libqpid-proton.so.2 #93560 0x00000039c6c17226 in pn_hash_put () from /usr/lib64/libqpid-proton.so.2 #93561 0x00000039c6c2a643 in pn_delivery_map_push () from /usr/lib64/libqpid-proton.so.2 #93562 0x00000039c6c2c44b in pn_do_transfer () from /usr/lib64/libqpid-proton.so.2 #93563 0x00000039c6c24385 in pn_dispatch_frame () from /usr/lib64/libqpid-proton.so.2 #93564 0x00000039c6c2448f in pn_dispatcher_input () from /usr/lib64/libqpid-proton.so.2 #93565 0x00000039c6c2d68b in pn_input_read_amqp () from /usr/lib64/libqpid-proton.so.2 #93566 0x00000039c6c3011a in pn_io_layer_input_passthru () from /usr/lib64/libqpid-proton.so.2 #93567 0x00000039c6c3011a in pn_io_layer_input_passthru () from /usr/lib64/libqpid-proton.so.2 #93568 0x00000039c6c2d275 in transport_consume () from /usr/lib64/libqpid-proton.so.2 #93569 0x00000039c6c304cd in pn_transport_process () from /usr/lib64/libqpid-proton.so.2 #93570 0x00000039c6c3e40c in pn_connector_process () from /usr/lib64/libqpid-proton.so.2 #93571 0x00007f1060c60460 in process_connector () from /home/mick/dispatch/build/libqpid-dispatch.so.0 #93572 0x00007f1060c61017 in thread_run () from /home/mick/dispatch/build/libqpid-dispatch.so.0 #93573 0x0000003cf9c07851 in start_thread (arg=0x7f1052bfd700) at pthread_create.c:301 #93574 0x0000003cf98e890d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:115 =================================================== Please note the 93,554 times when pni_map_entry() calls itself. :-)