You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by "Justin Ross (JIRA)" <ji...@apache.org> on 2016/11/04 14:11:58 UTC

[jira] [Updated] (PROTON-1169) Deadlock in pn_messenger_send when using more than 2 publishers?

     [ https://issues.apache.org/jira/browse/PROTON-1169?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Justin Ross updated PROTON-1169:
--------------------------------
    Labels: messenger  (was: )

> Deadlock in pn_messenger_send when using more than 2 publishers?
> ----------------------------------------------------------------
>
>                 Key: PROTON-1169
>                 URL: https://issues.apache.org/jira/browse/PROTON-1169
>             Project: Qpid Proton
>          Issue Type: Bug
>          Components: proton-c
>    Affects Versions: 0.12.0
>         Environment: Fedora 23, 64-bit
>            Reporter: Frank Quinn
>              Labels: messenger
>
> As per http://qpid.2158936.n2.nabble.com/Deadlock-in-pn-messenger-send-when-using-more-than-2-publishers-td7641239.html, I think I have found an issue with qpid proton when running in point to point mode. If running a single recv thread and 3 concurrent messenger links are set up with it, it seems to cause a deadlock in the third pn_messenger_send. All subsequent attempts to send will also hang (i.e. the proton example send.c application).
> We found this behaviour in our own code for OpenMAMA, but I think we have a valid recreation in native qpid proton code here too - see https://github.com/OpenMAMA/OpenMAMA/files/200901/om-issue-153.zip (attached as part of where it was discovered - https://github.com/OpenMAMA/OpenMAMA/issues/153).
> If you compile and run that code on latest yum versions for Fedora 23 / qpid proton, you'll get:
> {noformat}
> Creating the messengers
> Starting the messengers
> Starting listener thread
> pthread_create successful
> Creating message for sending
> Setting the subject for the message
> Setting the address and sending message to subscriber
> Sending from first publisher
> Sent from first publisher
> Recv got something
> Received message with subject 'First Publisher'
> Sending from second publisher
> Sent from second publisher
> Recv got something
> Received message with subject 'Second Publisher'
> Sending from third publisher
> {noformat}
> Then it hangs - you never get "Sent from third publisher".
> The application sets up one messenger to run on its own recv thread, then on the main thread, it fires up 3 distinct messengers and attempts to send a single message from each messenger, and the third one hangs.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org