-
Bug
-
Resolution: Not a Bug
-
Major
-
None
-
AMQ 7.0.3.GA
-
None
-
None
Although a JMS producer application which uses a resource adapter does not get any Exception, message will not be persist in a clustered broker.
[Setting]
- AMQ
cd <AMQ7.0.3 directory> ./bin/artemis create sampleBrokerM0 --user guest --role guest --password password --allow-anonymous --default-port 61616 --http-port 8161 ./bin/artemis create sampleBrokerM1 --user guest --role guest --password password --allow-anonymous --default-port 61617 --http-port 8162 cp examples/features/clustered/clustered-static-discovery/src/main/resources/activemq/server0/broker.xml sampleBrokerM0/etc cp examples/features/clustered/clustered-static-discovery/src/main/resources/activemq/server1/broker.xml sampleBrokerM1/etc # # Note: Above broker.xml definitions have `exampleQueue` queue in `exampleQueue` address. # DEBUG level log is useful Change to `logger.level=DEBUG` on etc/logging.properties
- EAP
I attached standalone-full.xml
point of setting<remote-connector name="remote-connector-hfuruich-amq1" socket-binding="remote-hfuruich-amq1"/> <connection-factory name="RemoteHfuruichAMQConnectionFactory" entries="java:/jms/remote_cf" connectors="remote-connector-hfuruich-amq1"/> <outbound-socket-binding name="remote-hfuruich-amq1"> <remote-destination host="xxxx.xxxx.xxxx.xxxx" port="61616"/> </outbound-socket-binding>
download and an attached reproducer "minimize-messaging-web.zip"
-> mvn install
-> deploy
[Instruction to reproduce]
- Start clustered 2 AMQ brokers
- Start EAP
standalone.sh --server-config=standalone-full.xml - Execute the following command 2 times to post 2 messages on the clustered brokers.
curl 'http://localhost:8080/minimal/queue/exampleQueue' -XPOST --data 'message=messagebody'
[result]
The sampleBrokerM0 hold the first message on the `exampleQueue`, as expected.
Tne sampleBrokerM1 does not persist the second message, and output following debug log. It should hold the second message. In addition to it, Produce app does not receive any Exception so client will believe the message is successfully sent.
13:39:32,679 DEBUG [org.apache.activemq.artemis.core.postoffice.impl.PostOfficeImpl] Couldn't find any bindings for address=jms.queue.exampleQueue on message=CoreMessage[messageID=108,durable=true,userID=195e5944-eb89-11e7-b526-c85b76bd6ea0,priority=4, timestamp=Thu Dec 28 13:39:32 JST 2017,expiration=0, durable=true, address=jms.queue.exampleQueue,properties=TypedProperties[__AMQ_CID=5eec3fd8-eb88-11e7-b526-c85b76bd6ea0,_AMQ_ROUTE_TO=[0000 0000 0000 0004),bytesAsLongs(4]]]@574408633 13:39:32,679 DEBUG [org.apache.activemq.artemis.core.postoffice.impl.PostOfficeImpl] Message CoreMessage[messageID=108,durable=true,userID=195e5944-eb89-11e7-b526-c85b76bd6ea0,priority=4, timestamp=Thu Dec 28 13:39:32 JST 2017,expiration=0, durable=true, address=jms.queue.exampleQueue,properties=TypedProperties[__AMQ_CID=5eec3fd8-eb88-11e7-b526-c85b76bd6ea0,_AMQ_ROUTE_TO=[0000 0000 0000 0004),bytesAsLongs(4]]]@574408633 is not going anywhere as it didn't have a binding on address:jms.queue.exampleQueue
Since debug logs similar to ENTMQBR-961(https://issues.jboss.org/browse/ENTMQBR-961) are output, it may have the same root cause. However, this problem occurs even if the queue already exists, so there is no workaround.
- is related to
-
ENTMQBR-972 Broker Does Not Redistribute Existing Messages
- Closed
-
JBEAP-14130 [7.1] Using Same Address/Queue Name And Adding Prefix Setting Are Required To Use RA For AMQ
- Closed