Overview
When using ActiveMQ for messaging queue with an Aurea Monitor Agent or with Intermediary you might find the following warning message in the startup log:
Received a message on a connection which is not yet started.
Have you forgotten to call Connection.start()?
Connection: ActiveMQConnection {id=ID:myhost-56455-1598344030213-1:4,clientId=ID:myhost-56455-1598344030213-0:4,started=false} Received: MessageDispatch {commandId = 0, responseRequired = false, consumerId = ID:myhost-56455-1598344030213-1:4:1:1, destination = temp-queue://ID:myhost-56455-1598344030213-1:4:1, message = ActiveMQBytesMessage {commandId = 2380, responseRequired = false, messageId = ID:myhost-62981-1598340523836-1:38:1:1:2376, originalDestination = null, originalTransactionId = null, producerId = ID:myhost-62981-1598340523836-1:38:1:1, destination = temp-queue://ID:myhost-56455-1598344030213-1:4:1, transactionId = null, expiration = 0, timestamp = 1598344033500, arrival = 0, brokerInTime = 1598344033501, brokerOutTime = 1598344033501, correlationId = null, replyTo = null, persistent = false, type = null, priority = 4, groupID = null, groupSequence = 0, targetConsumerId = null, compressed = false, userID = null, content = org.apache.activemq.util.ByteSequence@29f1e7b6, marshalledProperties = org.apache.activemq.util.ByteSequence@4bf2b2da, dataStructure = null, redeliveryCounter = 0, size = 0, properties = {sys__msgSeqID=2772, sys__type=3, sys__memberid=AwDv4UaWEk1CmmAkdAEQCq8s, sys__version=11.0230, sys__processStartup=1598340523629}, readOnlyProperties = true, readOnlyBody = true, droppable = false, jmsXGroupFirstForConsumer = false} ActiveMQBytesMessage{ bytesOut = null, dataOut = null, dataIn = null }, redeliveryCounter = 0}
Solution
The JMS subsystem starts the JMS producers before the consumers. This can lead to this warning which should be benign.
This is a message generated by ActiveMQ to ensure that a very common mistake is avoided when working with JMS and forgetting to start the JMS connection, creating a consumer and not having it receive any messages.
You can avoid this message by adjusting the warnAboutUnstartedConnectionTimeout setting of the connection configuration URI by setting a larger timeout or disable it by setting it to -1. This should be done on the launcher profile JVM arguments.
Example:
-Dcom.actional.jms.ext.activemq.url=failover:(tcp://localhost:61616)?jms.warnAboutUnstartedConnectionTimeout=30000
Priyanka Bhotika
Comments