[
https://issues.apache.org/jira/browse/PROTON-682?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Justin Ross updated PROTON-682:
-------------------------------
Labels: messenger patch (was: )
> proton-c: a call to pn_messenger_stop can get into an infinite loop if the
> remote connection is severed
> -------------------------------------------------------------------------------------------------------
>
> Key: PROTON-682
> URL: https://issues.apache.org/jira/browse/PROTON-682
> Project: Qpid Proton
> Issue Type: Bug
> Reporter: Dominic Evans
> Assignee: Andrew Stitcher
> Labels: messenger, patch
> Attachments: 36_socket_hangup_fix_messenger.c.patch,
> 36_socket_hangup_fix_selector.c.patch, 36_socket_hangup_fix_selector.h.patch
>
>
> The problem is that the transport layer is not being closed down properly if
> output is pending when the connection is severed and a messenger stop is
> requested. pn_messenger_stop needs to send out an AMQP close message any will
> only do this when there is an event to say that it can write (i.e
> pn_messenger_process gets a PN_WRITABLE event from pn_selector_next, which
> examines the pollfd and sets PN_WRITABLE event if POLLOUT is set in revents).
> Because this event is never generated it seems to loop forever.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)