You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@activemq.apache.org by ra...@apache.org on 2010/01/22 07:48:31 UTC
svn commit: r902009 - in /activemq/trunk/activemq-core/src:
main/java/org/apache/activemq/network/ConduitBridge.java
test/java/org/apache/activemq/usecases/ThreeBrokerQueueNetworkTest.java
Author: rajdavies
Date: Fri Jan 22 06:48:29 2010
New Revision: 902009
URL: http://svn.apache.org/viewvc?rev=902009&view=rev
Log:
Fix for http://issues.apache.org/activemq/browse/AMQ-2530
Modified:
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/network/ConduitBridge.java
activemq/trunk/activemq-core/src/test/java/org/apache/activemq/usecases/ThreeBrokerQueueNetworkTest.java
Modified: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/network/ConduitBridge.java
URL: http://svn.apache.org/viewvc/activemq/trunk/activemq-core/src/main/java/org/apache/activemq/network/ConduitBridge.java?rev=902009&r1=902008&r2=902009&view=diff
==============================================================================
--- activemq/trunk/activemq-core/src/main/java/org/apache/activemq/network/ConduitBridge.java (original)
+++ activemq/trunk/activemq-core/src/main/java/org/apache/activemq/network/ConduitBridge.java Fri Jan 22 06:48:29 2010
@@ -21,7 +21,6 @@
import java.util.Arrays;
import java.util.Iterator;
import java.util.List;
-
import org.apache.activemq.command.BrokerId;
import org.apache.activemq.command.ConsumerId;
import org.apache.activemq.command.ConsumerInfo;
@@ -48,6 +47,7 @@
super(configuration, localBroker, remoteBroker);
}
+ @Override
protected DemandSubscription createDemandSubscription(ConsumerInfo info) throws IOException {
if (addToAlreadyInterestedConsumers(info)) {
return null; // don't want this subscription added
@@ -94,7 +94,9 @@
return matched;
}
+ @Override
protected void removeDemandSubscription(ConsumerId id) throws IOException {
+ super.removeDemandSubscription(id);
List<DemandSubscription> tmpList = new ArrayList<DemandSubscription>();
for (Iterator i = subscriptionMapByLocalId.values().iterator(); i.hasNext();) {
Modified: activemq/trunk/activemq-core/src/test/java/org/apache/activemq/usecases/ThreeBrokerQueueNetworkTest.java
URL: http://svn.apache.org/viewvc/activemq/trunk/activemq-core/src/test/java/org/apache/activemq/usecases/ThreeBrokerQueueNetworkTest.java?rev=902009&r1=902008&r2=902009&view=diff
==============================================================================
--- activemq/trunk/activemq-core/src/test/java/org/apache/activemq/usecases/ThreeBrokerQueueNetworkTest.java (original)
+++ activemq/trunk/activemq-core/src/test/java/org/apache/activemq/usecases/ThreeBrokerQueueNetworkTest.java Fri Jan 22 06:48:29 2010
@@ -23,10 +23,8 @@
import java.util.concurrent.CountDownLatch;
import java.util.concurrent.TimeUnit;
import java.util.concurrent.atomic.AtomicInteger;
-
import javax.jms.Destination;
import javax.jms.MessageConsumer;
-
import org.apache.activemq.JmsMultipleBrokersTestSupport;
import org.apache.activemq.broker.Broker;
import org.apache.activemq.broker.BrokerFilter;
@@ -367,7 +365,14 @@
assertEquals(messageCount, msgsA.getMessageCount());
}
- public void testMigrateConsumerStuckMessages() throws Exception {
+ /*
+ * This test is disabled - as it fails with a fix for
+ * http://issues.apache.org/activemq/browse/AMQ-2530 - which highlights that
+ * For a Conduit bridge - local subscription Ids weren't removed in a ConduitBridge
+ * The test fails because on closing clientA - clientB correctly receives all the
+ * messages - ie. half dont get stuck on BrokerA -
+ */
+ public void XtestMigrateConsumerStuckMessages() throws Exception {
boolean suppressQueueDuplicateSubscriptions = false;
bridgeAllBrokers("default", 3, suppressQueueDuplicateSubscriptions);
startAllBrokers();
@@ -626,6 +631,7 @@
}
}
+ @Override
public void setUp() throws Exception {
super.setAutoFail(true);
super.setUp();