On Wed, Jun 10, 2015 at 02:17:23PM +0100, Frank Quinn wrote: > You can recreate this on a CentOS 6.6 box by installing qpid-proton-c-devel > using yum from EPEL, then compiling the example application that comes with > it in /usr/share/proton/examples/messenger/send.c. > > There is no broker with these example applications - it's point to point. > > There is a matching recv.c application there too. If you start recv first, > it works fine, but if you don't, the send application hangs which I believe > is new behaviour. > > Again, this does not happen on my Fedora laptop - only on CentOS 6.
I'm able to recreate this on RHEL6 as well using the RPMs from EPEL. I
see the connection aborted notice in the trace and then it fails to
exit. It appears to be repeatedly calling pn_transport_closed(). The
stack trace I see on EL6 is:
(gdb) backtrace
#0 pn_transport_closed (transport=0x804fa28)
at /home/mcpierce/Programming/Proton/proton-c/src/transport/transport.c:2802
#1 0x00140ea8 in pni_connection_capacity (ctx=0x804f920)
at /home/mcpierce/Programming/Proton/proton-c/src/messenger/messenger.c:166
#2 pni_connection_update (ctx=0x804f920) at
/home/mcpierce/Programming/Proton/proton-c/src/messenger/messenger.c:196
#3 pni_conn_modified (ctx=0x804f920) at
/home/mcpierce/Programming/Proton/proton-c/src/messenger/messenger.c:225
#4 0x00141071 in pn_messenger_process_transport (messenger=0x804cb40,
event=0x805c520)
at /home/mcpierce/Programming/Proton/proton-c/src/messenger/messenger.c:1201
#5 0x00141134 in pn_messenger_process_events (messenger=0x804cb40)
at /home/mcpierce/Programming/Proton/proton-c/src/messenger/messenger.c:1252
#6 0x00141f83 in pni_connection_readable (sel=0x804f958)
at /home/mcpierce/Programming/Proton/proton-c/src/messenger/messenger.c:261
#7 0x00143425 in pn_selectable_readable (selectable=0x804f958)
at /home/mcpierce/Programming/Proton/proton-c/src/selectable.c:204
#8 0x00141483 in pn_messenger_process (messenger=0x804cb40)
at /home/mcpierce/Programming/Proton/proton-c/src/messenger/messenger.c:1310
#9 0x001415c8 in pn_messenger_tsync (messenger=0x804cb40, predicate=0x13da40
<pn_messenger_sent>, timeout=-1)
at /home/mcpierce/Programming/Proton/proton-c/src/messenger/messenger.c:1379
#10 0x00141a97 in pn_messenger_sync (messenger=0x804cb40, predicate=0x13da40
<pn_messenger_sent>)
at /home/mcpierce/Programming/Proton/proton-c/src/messenger/messenger.c:1410
#11 0x00141c8c in pn_messenger_send (messenger=0x804cb40, n=-1)
at /home/mcpierce/Programming/Proton/proton-c/src/messenger/messenger.c:2119
#12 0x08048e59 in main (argc=-72537468, argv=0xb7ffe000)
at /home/mcpierce/Programming/Proton/examples/c/messenger/send.c:102
The same backtrace on F22 is:
(gdb) backtrace
#0 pn_transport_closed (transport=transport@entry=0x60ac40)
at /home/mcpierce/Programming/Proton/proton-c/src/transport/transport.c:2801
#1 0x00007ffff7bbf0a8 in pni_connection_capacity (sel=0x60aaf0)
at /home/mcpierce/Programming/Proton/proton-c/src/messenger/messenger.c:166
#2 pni_connection_update (sel=0x60aaf0) at
/home/mcpierce/Programming/Proton/proton-c/src/messenger/messenger.c:196
#3 pni_conn_modified (ctx=0x60aa80) at
/home/mcpierce/Programming/Proton/proton-c/src/messenger/messenger.c:225
#4 0x00007ffff7bbf135 in pn_messenger_process_transport
(messenger=messenger@entry=0x605970,
event=event@entry=0x61a240) at
/home/mcpierce/Programming/Proton/proton-c/src/messenger/messenger.c:1201
#5 0x00007ffff7bbf27b in pn_messenger_process_events
(messenger=messenger@entry=0x605970)
at /home/mcpierce/Programming/Proton/proton-c/src/messenger/messenger.c:1252
#6 0x00007ffff7bbf6d9 in pni_connection_readable (sel=0x60aaf0)
at /home/mcpierce/Programming/Proton/proton-c/src/messenger/messenger.c:261
#7 0x00007ffff7bbf7e8 in pn_messenger_process
(messenger=messenger@entry=0x605970)
at /home/mcpierce/Programming/Proton/proton-c/src/messenger/messenger.c:1310
#8 0x00007ffff7bbf94f in pn_messenger_tsync (messenger=0x605970,
predicate=0x7ffff7bbc420 <pn_messenger_sent>,
timeout=-1) at
/home/mcpierce/Programming/Proton/proton-c/src/messenger/messenger.c:1379
#9 0x0000000000401158 in main (argc=<optimized out>, argv=<optimized out>)
at /home/mcpierce/Programming/Proton/examples/c/messenger/send.c:102
There's definitely a difference in the runtime behavior of Fedora vs.
RHEL in this case.
--
Darryl L. Pierce, Sr. Software Engineer @ Red Hat, Inc.
Delivering value year after year.
Red Hat ranks #1 in value among software vendors.
http://www.redhat.com/promo/vendor/
pgpS6Fao6o8uN.pgp
Description: PGP signature
