You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by Oleksandr Rudyy <or...@gmail.com> on 2011/10/20 18:25:12 UTC

Review Request: QPID-3532 Fix the blocking of JMS operations when failover happens

-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/2469/
-----------------------------------------------------------

Review request for qpid and rajith attapattu.


Summary
-------

https://issues.apache.org/jira/browse/QPID-3532 describes some issues with non-blocking behaviour of 0-10 client failover.

This patch makes the 0-10 client hold the failover mutex during the failover. It also alters the Address resolution code to allow resolving addresses after failover and adds some more failover tests (inc ADDR based ones). Additionally, it makes the failover process notify any waiters in the session to abort and let failover proceed as they would otherwise prevent the failover from occurring until they timed out after 60 seconds.

This work does not go as far as we would like but still represents a functional improvement to failover. Additional improvements to the client locking model (such as an introduction a single connection lock) will require further iteration.

The patch was worked on by myself and Robbie.


This addresses bug QPID-3532.
    https://issues.apache.org/jira/browse/QPID-3532


Diffs
-----

  http://svn.apache.org/repos/asf/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/AMQConnection.java 1186863 
  http://svn.apache.org/repos/asf/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/AMQConnectionDelegate_0_10.java 1186863 
  http://svn.apache.org/repos/asf/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/AMQDestination.java 1186863 
  http://svn.apache.org/repos/asf/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/AMQSession_0_10.java 1186863 
  http://svn.apache.org/repos/asf/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/BasicMessageProducer_0_10.java 1186863 
  http://svn.apache.org/repos/asf/qpid/trunk/qpid/java/common/src/main/java/org/apache/qpid/transport/Connection.java 1186863 
  http://svn.apache.org/repos/asf/qpid/trunk/qpid/java/common/src/main/java/org/apache/qpid/transport/Session.java 1186863 
  http://svn.apache.org/repos/asf/qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/client/failover/FailoverBehaviourTest.java 1186863 
  http://svn.apache.org/repos/asf/qpid/trunk/qpid/java/test-profiles/JavaPre010Excludes 1186863 

Diff: https://reviews.apache.org/r/2469/diff


Testing
-------


Thanks,

Oleksandr