----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/5253/ -----------------------------------------------------------
(Updated 2012-05-30 13:11:45.840318) Review request for qpid, Andrew Stitcher and Gordon Sim. Changes ------- Fix error in previous patch. Summary ------- The HA plugin needs to know when queues are created. This patch creates a ConfigurationObserver to observe queue and exchange create/delete and bind/unbind. The MessageStore API has these hooks but you can't have multiple MessageStores on a broker, also calls to the MessageStore interface are conditional on durability which is not what I want for HA. The ConfigurationObserver calls are placed close to the corresponding MessageStore calls, except that the create() calls are placed earlier - just before the queue/exchange is stored in the Registry. That allows an Observer to effectively abort the creation of the queue/exchange (HA doesn't actually need this but it seemed like it might be useful) How does this look? Any suggestions for better ways to do it? Diffs (updated) ----- /trunk/qpid/cpp/src/Makefile.am 1343762 /trunk/qpid/cpp/src/qpid/broker/Broker.h 1343762 /trunk/qpid/cpp/src/qpid/broker/Broker.cpp 1343762 /trunk/qpid/cpp/src/qpid/broker/ConfigurationObserver.h PRE-CREATION /trunk/qpid/cpp/src/qpid/broker/ConfigurationObservers.h PRE-CREATION /trunk/qpid/cpp/src/qpid/broker/ConnectionObservers.h 1343762 /trunk/qpid/cpp/src/qpid/broker/ExchangeRegistry.cpp 1343762 /trunk/qpid/cpp/src/qpid/broker/Observers.h PRE-CREATION /trunk/qpid/cpp/src/qpid/broker/QueueRegistry.cpp 1343762 /trunk/qpid/cpp/src/qpid/ha/Backup.cpp 1343762 /trunk/qpid/cpp/src/qpid/ha/ReplicatingSubscription.cpp 1343762 /trunk/qpid/cpp/src/qpid/sys/AsynchIOHandler.cpp 1343762 /trunk/qpid/doc/book/src/java-broker/Broker-Configuration-Guide.xml 1343762 /trunk/qpid/doc/book/src/java-broker/Producer-Flow-Control.xml 1343762 /trunk/qpid/doc/book/src/java-broker/Qpid-Java-FAQ.xml 1343762 /trunk/qpid/doc/book/src/programming/Programming-In-Apache-Qpid-Book.xml 1343762 /trunk/qpid/java/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/BDBMessageStoreQuotaEventsTest.java 1343762 /trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/AMQProtocolEngine.java 1343762 /trunk/qpid/java/broker/src/test/java/org/apache/qpid/server/store/MessageStoreQuotaEventsTestBase.java 1343762 /trunk/qpid/java/broker/src/test/java/org/apache/qpid/server/store/derby/DerbyMessageStoreQuotaEventsTest.java 1343762 /trunk/qpid/java/client/src/main/java/org/apache/qpid/client/AMQConnectionDelegate_8_0.java 1343762 /trunk/qpid/java/client/src/main/java/org/apache/qpid/client/AMQSession.java 1343762 /trunk/qpid/java/client/src/main/java/org/apache/qpid/client/AMQSession_0_10.java 1343762 /trunk/qpid/java/client/src/main/java/org/apache/qpid/jms/FailoverPolicy.java 1343762 /trunk/qpid/java/common/src/main/java/org/apache/qpid/configuration/ClientProperties.java 1343762 /trunk/qpid/java/common/src/main/java/org/apache/qpid/transport/Session.java 1343762 /trunk/qpid/java/systests/src/main/java/org/apache/qpid/client/failover/FailoverBehaviourTest.java 1343762 /trunk/qpid/java/systests/src/main/java/org/apache/qpid/server/store/QuotaMessageStore.java 1343762 /trunk/qpid/java/systests/src/main/java/org/apache/qpid/server/store/StoreOverfullTest.java 1343762 /trunk/qpid/java/test-profiles/Java010Excludes 1343762 /trunk/qpid/java/test-profiles/JavaTransientExcludes 1343762 Diff: https://reviews.apache.org/r/5253/diff Testing ------- make check Thanks, Alan
