[ https://issues.apache.org/jira/browse/PROTON-1310?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Justin Ross updated PROTON-1310: -------------------------------- Fix Version/s: (was: 0.18.0) proton-j-0.20.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: proton-j-0.20.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.4.14#64029) --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@qpid.apache.org For additional commands, e-mail: dev-h...@qpid.apache.org