Message not forwared in a network broker - ActiveMQ 5.3 & SMX4 - advisorySupport ---------------------------------------------------------------------------------
Key: AMQ-2640 URL: https://issues.apache.org/activemq/browse/AMQ-2640 Project: ActiveMQ Issue Type: Bug Affects Versions: 5.3.0 Reporter: Charles Moulliard Hi, I run ActiveMq 5.3 in embedded mode in two SMX4 instances. I have defined a forward network topology to forward messages from master to slave when a client is connected to the slave. No messages are forwarded ! Where is the issue ? Config of Master {code} <broker xmlns="http://activemq.apache.org/schema/core" dataDirectory="d:/temp/activemq-data" brokerName="master" useShutdownHook="false" useJmx="true" advisorySupport="false"> <!-- Destination specific policies using destination names or wildcards --> <destinationPolicy> <policyMap> <policyEntries> <policyEntry queue=">" memoryLimit="5mb"/> <policyEntry topic=">" memoryLimit="5mb"> <subscriptionRecoveryPolicy> <lastImageSubscriptionRecoveryPolicy/> </subscriptionRecoveryPolicy> </policyEntry> </policyEntries> </policyMap> </destinationPolicy> <!-- Use the following to configure how ActiveMQ is exposed in JMX --> <managementContext> <managementContext createConnector="false"/> </managementContext> <!-- The store and forward broker networks ActiveMQ will listen to --> <networkConnectors> <!-- by default just auto discover the other brokers <networkConnector name="default-nc" uri="multicast://default"/> --> <!-- Example of a static configuration: <networkConnector name="host1 and host2" uri="static://(tcp://host1:61616,tcp://host2:61616)"/> --> <networkConnector uri="static://(tcp://localhost:61617)"/> </networkConnectors> <!-- <persistenceAdapter> <amqPersistenceAdapter syncOnWrite="false" directory="d:/temp/activemq/default" maxFileLength="20 mb"/> </persistenceAdapter> --> <persistenceAdapter> <!-- Master/Slave <kahaDB directory="d:/temp/activemq-data" journalMaxFileLength="32mb"/> --> <kahaDB directory="d:/temp/activemq-data-master" enableJournalDiskSyncs="false" indexWriteBatchSize="10000" indexCacheSize="1000"/> </persistenceAdapter> <!-- Use the following if you wish to configure the journal with JDBC --> <!-- <persistenceAdapter> <journaledJDBC dataDirectory="${activemq.base}/data" dataSource="#postgres-ds"/> </persistenceAdapter> --> <!-- Or if you want to use pure JDBC without a journal --> <!-- <persistenceAdapter> <jdbcPersistenceAdapter dataSource="#postgres-ds"/> </persistenceAdapter> --> <!-- The maximum about of space the broker will use before slowing down producers --> <systemUsage> <systemUsage> <memoryUsage> <memoryUsage limit="50 mb"/> </memoryUsage> <storeUsage> <storeUsage limit="1 gb" name="foo"/> </storeUsage> <tempUsage> <tempUsage limit="100 mb"/> </tempUsage> </systemUsage> </systemUsage> <!-- The transport connectors ActiveMQ will listen to --> <transportConnectors> <!-- <transportConnector name="openwire" uri="tcp://localhost:61616" discoveryUri="multicast://default"/> --> <transportConnector name="openwire" uri="tcp://localhost:61616"/> <!-- <transportConnector name="stomp" uri="stomp://localhost:61613"/> --> </transportConnectors> </broker> {code} Config of the Slave {code} <broker xmlns="http://activemq.apache.org/schema/core" dataDirectory="d:/temp/activemq-data" brokerName="slave" useShutdownHook="false" useJmx="true" advisorySupport="false"> <!-- Destination specific policies using destination names or wildcards --> <destinationPolicy> <policyMap> <policyEntries> <policyEntry queue=">" memoryLimit="5mb"/> <policyEntry topic=">" memoryLimit="5mb"> <subscriptionRecoveryPolicy> <lastImageSubscriptionRecoveryPolicy/> </subscriptionRecoveryPolicy> </policyEntry> </policyEntries> </policyMap> </destinationPolicy> <!-- Use the following to configure how ActiveMQ is exposed in JMX --> <managementContext> <managementContext createConnector="false"/> </managementContext> <!-- The store and forward broker networks ActiveMQ will listen to --> <networkConnectors> <!-- by default just auto discover the other brokers <networkConnector name="default-nc" uri="multicast://default"/> --> <!-- Example of a static configuration: <networkConnector name="host1 and host2" uri="static://(tcp://host1:61616,tcp://host2:61616)"/> --> </networkConnectors> <!-- <persistenceAdapter> <amqPersistenceAdapter syncOnWrite="false" directory="d:/temp/activemq/default" maxFileLength="20 mb"/> </persistenceAdapter> --> <persistenceAdapter> <!-- Master/Slave <kahaDB directory="d:/temp/activemq-data" journalMaxFileLength="32mb"/> --> <!-- <kahaDB directory="d:/temp/activemq-data-slave" enableJournalDiskSyncs="false" indexWriteBatchSize="10000" indexCacheSize="1000"/> --> <kahaDB directory="d:/temp/activemq-data-slave" enableJournalDiskSyncs="false" indexWriteBatchSize="10000" indexCacheSize="1000"/> </persistenceAdapter> <!-- Use the following if you wish to configure the journal with JDBC --> <!-- <persistenceAdapter> <journaledJDBC dataDirectory="${activemq.base}/data" dataSource="#postgres-ds"/> </persistenceAdapter> --> <!-- Or if you want to use pure JDBC without a journal --> <!-- <persistenceAdapter> <jdbcPersistenceAdapter dataSource="#postgres-ds"/> </persistenceAdapter> --> <!-- The maximum about of space the broker will use before slowing down producers --> <systemUsage> <systemUsage> <memoryUsage> <memoryUsage limit="50 mb"/> </memoryUsage> <storeUsage> <storeUsage limit="1 gb" name="foo"/> </storeUsage> <tempUsage> <tempUsage limit="100 mb"/> </tempUsage> </systemUsage> </systemUsage> <!-- Configure the broker as a slave <services> <masterConnector remoteURI="tcp://localhost:61616" /> </services> --> <!-- The transport connectors ActiveMQ will listen to --> <transportConnectors> <!-- <transportConnector name="openwire" uri="tcp://localhost:61616" discoveryUri="multicast://default"/> --> <transportConnector name="openwire" uri="tcp://localhost:61617"/> <!-- <transportConnector name="stomp" uri="stomp://localhost:61613"/> --> </transportConnectors> </broker> {code} Network connection is well established 17:52:27,090 | INFO | xtenderThread-10 | OsgiBundleXmlApplicationContext | ractOsgiBundleApplicationContext 348 | Not publishing application contex t OSGi service for bundle null (activemq-broker.xml) 17:52:27,090 | INFO | xtenderThread-10 | ContextLoaderListener | BundleApplicationContextListener 45 | Application context successfully refreshed (OsgiBundleXmlApplicationContext(bundle=activemq-broker.xml, config=osgibundle:/META-INF/spring/*.xml)) 17:52:27,215 | INFO | r=vm://master#12 | DemandForwardingBridge | rk.DemandForwardingBridgeSupport 303 | Network connection between vm://m aster#12 and tcp://localhost/127.0.0.1:61617(slave) has been established. but when I connect with the client : ant consumer -Durl="tcp://localhost:61617" -Dqueue=IN on the slave broker I don't see anything on the console Could it be related to this parameter --> advisorySupport="false" ? -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.