git-svn-id: https://svn.apache.org/repos/asf/activemq/trunk@1032647 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Bosanac Dejan 2010-11-08 17:45:35 +00:00
parent 7983abfcd6
commit 34f19297d4
2 changed files with 16 additions and 6 deletions

View File

@ -566,9 +566,16 @@ public abstract class DemandForwardingBridgeSupport implements NetworkBridge, Br
ConsumerInfo info = (ConsumerInfo) data; ConsumerInfo info = (ConsumerInfo) data;
BrokerId[] path = info.getBrokerPath(); BrokerId[] path = info.getBrokerPath();
if (info.isBrowser()) {
if (LOG.isDebugEnabled()) {
LOG.info(configuration.getBrokerName() + " Ignoring sub from " + remoteBrokerName + ", browsers explicitly suppressed");
}
return;
}
if (path != null && path.length >= networkTTL) { if (path != null && path.length >= networkTTL) {
if (LOG.isDebugEnabled()) { if (LOG.isDebugEnabled()) {
LOG.debug(configuration.getBrokerName() + " Ignoring sub from " + remoteBrokerName + ", restricted to " + networkTTL + " network hops only : " + info); LOG.debug(configuration.getBrokerName() + " Ignoring sub from " + remoteBrokerName + ", restricted to " + networkTTL + " network hops only : " + info);
} }
return; return;
} }

View File

@ -51,23 +51,25 @@ public class BrowseOverNetworkTest extends JmsMultipleBrokersTestSupport {
sendMessages("BrokerA", dest, MESSAGE_COUNT); sendMessages("BrokerA", dest, MESSAGE_COUNT);
browseMessages("BrokerB", dest); Thread.sleep(1000);
Thread.sleep(2000); int browsed = browseMessages("BrokerB", dest);
Thread.sleep(1000);
MessageConsumer clientA = createConsumer("BrokerA", dest); MessageConsumer clientA = createConsumer("BrokerA", dest);
MessageIdList msgsA = getConsumerMessages("BrokerA", clientA); MessageIdList msgsA = getConsumerMessages("BrokerA", clientA);
msgsA.waitForMessagesToArrive(MESSAGE_COUNT); msgsA.waitForMessagesToArrive(MESSAGE_COUNT);
Thread.sleep(2000); Thread.sleep(1000);
MessageConsumer clientB = createConsumer("BrokerB", dest); MessageConsumer clientB = createConsumer("BrokerB", dest);
MessageIdList msgsB = getConsumerMessages("BrokerB", clientB); MessageIdList msgsB = getConsumerMessages("BrokerB", clientB);
msgsB.waitForMessagesToArrive(MESSAGE_COUNT); msgsB.waitForMessagesToArrive(MESSAGE_COUNT);
LOG.info("A+B: " + msgsA.getMessageCount() + "+" LOG.info("A+B: " + msgsA.getMessageCount() + "+"
+ msgsB.getMessageCount()); + msgsB.getMessageCount());
assertEquals(MESSAGE_COUNT, msgsA.getMessageCount() assertEquals("Consumer on Broker A, should've consumed all messages", MESSAGE_COUNT, msgsA.getMessageCount());
+ msgsB.getMessageCount()); assertEquals("Broker B shouldn't get any messages", 0, browsed);
} }
public void testConsumerInfo() throws Exception { public void testConsumerInfo() throws Exception {
@ -185,6 +187,7 @@ public class BrowseOverNetworkTest extends JmsMultipleBrokersTestSupport {
startAllBrokers(); startAllBrokers();
brokers.get("BrokerA").broker.waitUntilStarted(); brokers.get("BrokerA").broker.waitUntilStarted();
brokers.get("BrokerB").broker.waitUntilStarted();
brokers.get("BrokerC").broker.waitUntilStarted(); brokers.get("BrokerC").broker.waitUntilStarted();
brokers.get("BrokerD").broker.waitUntilStarted(); brokers.get("BrokerD").broker.waitUntilStarted();