[
https://issues.apache.org/jira/browse/PROTON-1310?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Robbie Gemmell updated PROTON-1310:
-----------------------------------
Affects Version/s: 0.16.0
Fix Version/s: (was: 0.16.0)
0.17.0
> proton-j reactor transport head never closes
> --------------------------------------------
>
> Key: PROTON-1310
> URL: https://issues.apache.org/jira/browse/PROTON-1310
> Project: Qpid Proton
> Issue Type: Bug
> Components: proton-j
> Affects Versions: 0.15.0, 0.16.0
> Reporter: Daniel Evans
> Fix For: 0.17.0
>
>
> With a server (listener) test class and a client test class, I'm able to
> disconnect the client such that occasionally on the server the
> TRANSPORT_ERROR and TRANSPORT_TAIL_CLOSED events fire but
> TRANSPORT_HEAD_CLOSED and TRANSPORT_CLOSED do not. A timer selectable running
> to keep the reactor alive then causes repeated TRANSPORT events that all
> report -1 pending and isClosed == true. This goes on forever.
> In the good case, the global event logger sequence is:
> TRANSPORT_ERROR
> TRANSPORT_TAIL_CLOSED
> SELECTABLE_UPDATED
> REACTOR_QUIESCED
> TRANSPORT_HEAD_CLOSED
> TRANSPORT_CLOSED
> SELECTABLE_FINAL
> CONNECTION_UNBOUND
> TRANSPORT
> And in the bad case:
> TRANSPORT_ERROR
> TRANSPORT_TAIL_CLOSED
> SELECTABLE_UPDATED
> REACTOR_QUIESCED
> SELECTABLE_FINAL
> REACTOR_QUIESCED
> SELECTABLE_UPDATED
> TRANSPORT
> REACTOR_QUIESCED
> SELECTABLE_UPDATED
> TRANSPORT
> ... etc.
> Digging around with the debugger I verified that no selectables were writable
> in the IOHandler and TransportImpl's pop() was never being called when the
> output pending was -1.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]