You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by "Alex Rudyy (JIRA)" <ji...@apache.org> on 2012/09/07 14:29:07 UTC

[jira] [Created] (QPID-4289) [Java Client 0-8/0-9.x] Failover functionality does not restore the connection

Alex Rudyy created QPID-4289:
--------------------------------

             Summary: [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.18, 0.16, 0.19
            Reporter: Alex Rudyy
            Assignee: Alex Rudyy
             Fix For: 0.19


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. 


--
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-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org


[jira] [Updated] (QPID-4289) [Java Client 0-8/0-9.x] Failover functionality does not restore the connection

Posted by "Alex Rudyy (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/QPID-4289?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

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

    Status: Ready To Review  (was: In Progress)
    
> [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: Alex Rudyy
>             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 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. 

--
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-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org


[jira] [Assigned] (QPID-4289) [Java Client 0-8/0-9.x] Failover functionality does not restore the connection

Posted by "Alex Rudyy (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/QPID-4289?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Alex Rudyy reassigned QPID-4289:
--------------------------------

    Assignee: Robbie Gemmell  (was: Alex Rudyy)

Robbie,
Could you please review and commit the patch attached?
                
> [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 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. 

--
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-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org


[jira] [Updated] (QPID-4289) [Java Client 0-8/0-9.x] Failover functionality does not restore the connection

Posted by "Alex Rudyy (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/QPID-4289?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

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

    Attachment: 0001-QPID-4289-Fix-failover-issues.patch

Attached a patch resolving the failover faunctionality issues on 0-9.x/0-8 path
                
> [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: Alex Rudyy
>             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 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. 

--
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-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org


[jira] [Updated] (QPID-4289) [Java Client 0-8/0-9.x] Failover functionality does not restore the connection

Posted by "Alex Rudyy (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/QPID-4289?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

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

    Attachment:     (was: 0001-QPID-4289-Fix-failover-issues.patch)
    
> [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-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org


[jira] [Resolved] (QPID-4289) [Java Client 0-8/0-9.x] Failover functionality sometimes does not restore the connection

Posted by "Philip Harvey (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/QPID-4289?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Philip Harvey resolved QPID-4289.
---------------------------------

    Resolution: Fixed

I reviewed the changes Robbie made in the light of QPID-4344. All looks good.
                
> [Java Client 0-8/0-9.x] Failover functionality sometimes 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: Philip Harvey
>             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-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org


[jira] [Updated] (QPID-4289) [Java Client 0-8/0-9.x] Failover functionality sometimes does not restore the connection

Posted by "Robbie Gemmell (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/QPID-4289?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Robbie Gemmell updated QPID-4289:
---------------------------------

    Summary: [Java Client 0-8/0-9.x] Failover functionality sometimes does not restore the connection  (was: [Java Client 0-8/0-9.x] Failover functionality does not restore the connection)
    
> [Java Client 0-8/0-9.x] Failover functionality sometimes 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-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org


[jira] [Commented] (QPID-4289) [Java Client 0-8/0-9.x] Failover functionality sometimes does not restore the connection

Posted by "Robbie Gemmell (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/QPID-4289?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13490036#comment-13490036 ] 

Robbie Gemmell commented on QPID-4289:
--------------------------------------

I have applied a patch from Phil Harvey (found on QPID-4344) along with some additional changes of my own to resolve some issues (one caused by the prior changes in this JIRA) which could lead to the client not initiating failover when it should.
                
> [Java Client 0-8/0-9.x] Failover functionality sometimes 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-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org


[jira] [Reopened] (QPID-4289) [Java Client 0-8/0-9.x] Failover functionality sometimes does not restore the connection

Posted by "Robbie Gemmell (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/QPID-4289?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Robbie Gemmell reopened QPID-4289:
----------------------------------


Reopening due to issues discussed on QPID-4344 which resulted from the changes sin this JIRA.
                
> [Java Client 0-8/0-9.x] Failover functionality sometimes 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-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org


[jira] [Assigned] (QPID-4289) [Java Client 0-8/0-9.x] Failover functionality sometimes does not restore the connection

Posted by "Robbie Gemmell (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/QPID-4289?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Robbie Gemmell reassigned QPID-4289:
------------------------------------

    Assignee: Philip Harvey  (was: Robbie Gemmell)

Phil, could you review the change please?
                
> [Java Client 0-8/0-9.x] Failover functionality sometimes 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: Philip Harvey
>             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-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org


[jira] [Updated] (QPID-4289) [Java Client 0-8/0-9.x] Failover functionality does not restore the connection

Posted by "Alex Rudyy (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/QPID-4289?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

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

    Attachment: 0001-QPID-4289-Fix-failover-issues.patch

Attached the final version of the patch
                
> [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-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org


[jira] [Resolved] (QPID-4289) [Java Client 0-8/0-9.x] Failover functionality sometimes does not restore the connection

Posted by "Robbie Gemmell (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/QPID-4289?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Robbie Gemmell resolved QPID-4289.
----------------------------------

    Resolution: Fixed

Patch applied.
                
> [Java Client 0-8/0-9.x] Failover functionality sometimes 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-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org


[jira] [Updated] (QPID-4289) [Java Client 0-8/0-9.x] Failover functionality does not restore the connection

Posted by "Alex Rudyy (JIRA)" <ji...@apache.org>.
     [ 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-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org


[jira] [Updated] (QPID-4289) [Java Client 0-8/0-9.x] Failover functionality does not restore the connection

Posted by "Alex Rudyy (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/QPID-4289?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

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

    Attachment: 0001-QPID-4289-Fix-failover-issues.patch
    
> [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, 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-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org


[jira] [Updated] (QPID-4289) [Java Client 0-8/0-9.x] Failover functionality does not restore the connection

Posted by "Alex Rudyy (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/QPID-4289?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

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

    Attachment: 0001-QPID-4289-Fix-failover-issues.patch
    
> [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-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org


[jira] [Updated] (QPID-4289) [Java Client 0-8/0-9.x] Failover functionality does not restore the connection

Posted by "Alex Rudyy (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/QPID-4289?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

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

    Attachment:     (was: 0001-QPID-4289-Fix-failover-issues.patch)
    
> [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-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org


[jira] [Updated] (QPID-4289) [Java Client 0-8/0-9.x] Failover functionality does not restore the connection

Posted by "Alex Rudyy (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/QPID-4289?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

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

    Attachment: 0001-QPID-4289-Fix-failover-issues.patch
    
> [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-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org


[jira] [Updated] (QPID-4289) [Java Client 0-8/0-9.x] Failover functionality does not restore the connection

Posted by "Alex Rudyy (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/QPID-4289?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

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

    Attachment:     (was: 0001-QPID-4289-Fix-failover-issues.patch)
    
> [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-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org


[jira] [Updated] (QPID-4289) [Java Client 0-8/0-9.x] Failover functionality sometimes does not restore the connection

Posted by "Robbie Gemmell (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/QPID-4289?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Robbie Gemmell updated QPID-4289:
---------------------------------

    Status: Ready To Review  (was: In Progress)
    
> [Java Client 0-8/0-9.x] Failover functionality sometimes 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-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org