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

Alex Rudyy updated QPID-4289:
-----------------------------

    Description: 
Failover functionality on 0-8/0-9.x java client does not restore the connection 
in the following scenarios:

* when on initial establishing of the connectivity the connection object is 
marked as closed after not being able to connect to the first brokers from the 
broker list but at the end it manages to connect to the one of the following 
brokers from the broker list
* there is a racing condition between waking up the connection state waiter and 
closing the phisical connection on receiving ConnectionClose command from the 
broker. As result, waiters are notified, new connection is created and closed 
afterwards.
* on killing the broker when no IOException is thrown from socket input/output 
streams but instead -1 is returned by read operation, the failover starts but 
IoSender thread is left running. As result, on multiple reconnection attempts 
the thread resources can be exhausted and that can potentially result in OOME.


  was:
Failover functionality on 0-8/0-9.x java client does not restore the connection 
in the following scenarios:

* when on initial establishing of the connectivity the connection object is 
marked as closed after to not being able to connect to the first brokers from 
the broker list but managed to connect to the one of the following brokers from 
the broker list
* there are racing condition between waking up the connection state waiters and 
closing the phisical connection. As result, waiters are notified, new 
connection is created and closed afterwards.
* on killing the broker when no IOException is thrown from socket input/output 
streams but -1 is returned by read operation instead, the failover starts but 
IoSender thread is left running. As result, on multiple reconnection attempts 
the thread resources can be exhausted and that can potentially result in OOME. 


    
> [Java Client 0-8/0-9.x] Failover functionality does not restore the connection
> ------------------------------------------------------------------------------
>
>                 Key: QPID-4289
>                 URL: https://issues.apache.org/jira/browse/QPID-4289
>             Project: Qpid
>          Issue Type: Bug
>          Components: Java Client
>    Affects Versions: 0.16, 0.18, 0.19
>            Reporter: Alex Rudyy
>            Assignee: Robbie Gemmell
>             Fix For: 0.19
>
>         Attachments: 0001-QPID-4289-Fix-failover-issues.patch
>
>
> Failover functionality on 0-8/0-9.x java client does not restore the 
> connection in the following scenarios:
> * when on initial establishing of the connectivity the connection object is 
> marked as closed after not being able to connect to the first brokers from 
> the broker list but at the end it manages to connect to the one of the 
> following brokers from the broker list
> * there is a racing condition between waking up the connection state waiter 
> and closing the phisical connection on receiving ConnectionClose command from 
> the broker. As result, waiters are notified, new connection is created and 
> closed afterwards.
> * on killing the broker when no IOException is thrown from socket 
> input/output streams but instead -1 is returned by read operation, the 
> failover starts but IoSender thread is left running. As result, on multiple 
> reconnection attempts the thread resources can be exhausted and that can 
> potentially result in OOME.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

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

Reply via email to