Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Won't Fix
-
0.10
-
None
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?)