You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by "Joel Caplin (Updated) (JIRA)" <ji...@apache.org> on 2011/12/14 22:39:30 UTC

[jira] [Updated] (QPID-3686) Donor/Donee Brokers should not accept connections?

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

Joel Caplin updated QPID-3686:
------------------------------

    Description: 
TO REPRODUCE:

Suppose I have three C++ brokers (q1, q2, q3) in a cman/corosync-managed cluster. I have a java client J1. Then:

t0 - all three brokers are up
t1 - q1 falls over
t2 - q1 is restarted; catch up begins with q2 select as donor
t3 [i] - EITHER J1 starts; it connects to q1 and attempts to create a session
t3 [ii] - OR J1 starts; it connects to q2 and attempts to create a session
t3 + 60000 milliseconds - J1 raises SessionException (see attached stack trace)

It _appears_ that the connection is effectively blocked from doing anything useful while the donor/donee is participating in a catch up.

Would it be possible to reject connections until such time that the broker is able to fulfill requests (i.e. able to create a JMS sesssion from my client's perspective?)




  was:
TO REPRODUCE:

Suppose I have three C++ brokers (q1, q2, q3) in a cman/corosync-managed cluster. I have a java client J1. Then:

t0 - all three brokers are up
t1 - q1 falls over
t2 - q1 is restarted; catch up begins with q2 select as donor
t3 (i) - EITHER J1 starts; it connects to q1 and attempts to create a session
t3 (ii) - OR J1 starts; it connects to q2 and attempts to create a session
t3 + 60000 milliseconds - J1 raises SessionException (see attached stack trace)

It _appears_ that the connection is effectively blocked from doing anything useful while the donor/donee is participating in a catch up.

Would it be possible to reject connections until such time that the broker is able to fulfill requests (i.e. able to create a JMS sesssion from my client's perspective?)




    
> Donor/Donee Brokers should not accept connections?
> --------------------------------------------------
>
>                 Key: QPID-3686
>                 URL: https://issues.apache.org/jira/browse/QPID-3686
>             Project: Qpid
>          Issue Type: Bug
>          Components: C++ Broker
>    Affects Versions: 0.10
>         Environment: cat /etc/redhat-release
>   CentOS Linux release 6.0 (Final)
> uname -a
>   Linux ip-10-196-231-143 2.6.32-71.29.1.el6.x86_64 #1 SMP Mon Jun 27 19:49:27 BST 2011 x86_64 x86_64 x86_64 GNU/Linux
> rpm -qa qpid-cpp-server*
>   qpid-cpp-server-0.10-8.el6_1.x86_64
>            Reporter: Joel Caplin
>              Labels: connection, session, timeout
>
> TO REPRODUCE:
> Suppose I have three C++ brokers (q1, q2, q3) in a cman/corosync-managed cluster. I have a java client J1. Then:
> t0 - all three brokers are up
> t1 - q1 falls over
> t2 - q1 is restarted; catch up begins with q2 select as donor
> t3 [i] - EITHER J1 starts; it connects to q1 and attempts to create a session
> t3 [ii] - OR J1 starts; it connects to q2 and attempts to create a session
> t3 + 60000 milliseconds - J1 raises SessionException (see attached stack trace)
> It _appears_ that the connection is effectively blocked from doing anything useful while the donor/donee is participating in a catch up.
> Would it be possible to reject connections until such time that the broker is able to fulfill requests (i.e. able to create a JMS sesssion from my client's perspective?)

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org