> 1- Should we be setting connectionFactory.setConfirmationWindowSize()?

The docs for confirmationWindowSize are here [1]. Whether you should set
this parameter is really up to you and the behavior you want for your
application.

> 2- Are the retry settings reasonable?

"Reasonable" is hard to judge in a support context like this. I'm not sure
we can really judge.

> Ultimately we just want to reconnect in under a minute and avoid our
timeout.

It might be worth investigating why you got the timeout in the first place.
Do you have any data from the broker or the network that might suggest what
happened?

> Or, maybe we just need to set our timeout longer?

Without knowing the root cause of the timeout it's impossible to say.


Justin

[1]
https://activemq.apache.org/components/artemis/documentation/latest/client-failover.html#reconnect-to-the-same-server

On Tue, Nov 19, 2024 at 3:30 PM John Lilley <john.lil...@redpointglobal.com>
wrote:

> 2024-11-19 14:19:51,426 WARN  [org.apache.activemq.artemis.core.server]
> AMQ222066: Reattach request from 10.147.133.72:53082 failed as there is
> no confirmationWindowSize configured, which may be ok for your system
>
> This was issued by the broker at the same time that our JMS client issued
> this warning:
>
> 2024-11-19T14:19:51.417 [Thread-2 (ActiveMQ-client-global-threads)]
> .client.connectionFailureDetected:293 [] WARN - AMQ212037: Connection
> failure to dm-activemq-live-svc/10.0.219.91:61616 has been detected:
> AMQ219014: Timed out after waiting 10000 ms for response when sending
> packet 71 [code=CONNECTION_TIMEDOUT]
> 2024-11-19T14:19:51.414 [main] .JmsProducerPool.send_:389 [y6y5v5wm1s0x]
> WARN - Error sending message, will retry jakarta.jms.JMSException:
> AMQ219014: Timed out after waiting 10000 ms for response when sending
> packet 71
> at
> org.apache.activemq.artemis.core.protocol.core.impl.ChannelImpl.sendBlocking(ChannelImpl.java:550)
> at
> org.apache.activemq.artemis.core.protocol.core.impl.ChannelImpl.sendBlocking(ChannelImpl.java:452)
> at
> org.apache.activemq.artemis.core.protocol.core.impl.ActiveMQSessionContext.sendFullMessage(ActiveMQSessionContext.java:588)
> at
> org.apache.activemq.artemis.core.client.impl.ClientProducerImpl.sendRegularMessage(ClientProducerImpl.java:305)
> at
> org.apache.activemq.artemis.core.client.impl.ClientProducerImpl.doSend(ClientProducerImpl.java:277)
> at
> org.apache.activemq.artemis.core.client.impl.ClientProducerImpl.send(ClientProducerImpl.java:147)
> at
> org.apache.activemq.artemis.core.client.impl.ClientProducerImpl.send(ClientProducerImpl.java:129)
> at
> org.apache.activemq.artemis.jms.client.ActiveMQMessageProducer.doSendx(ActiveMQMessageProducer.java:483)
> at
> org.apache.activemq.artemis.jms.client.ActiveMQMessageProducer.send(ActiveMQMessageProducer.java:221)
> at
> net.redpoint.rpdm.ipc.jms.JmsProducerPool.send_(JmsProducerPool.java:385)
> at
> net.redpoint.rpdm.ipc.jms.JmsProducerPool.sendRequest(JmsProducerPool.java:300)
> at
> net.redpoint.rpdm.ipc.jms.JmsRpcClientChannel.sendRequest(JmsRpcClientChannel.java:230)
> at
> net.redpoint.rpdm.ipc.jms.JmsRpcClientChannel.invokeRaw(JmsRpcClientChannel.java:203)
> Caused by:
> ActiveMQConnectionTimedOutException[errorType=CONNECTION_TIMEDOUT
> message=AMQ219014: Timed out after waiting 10000 ms for response when
> sending packet 71]
> ... 13 more
>
> After 72 seconds, we hit our own 60-second timeout and fail.
>
> In our connection factory, we are setting
>
> connectionFactory.setRetryInterval(1000);
> connectionFactory.setRetryIntervalMultiplier(1.5);
> connectionFactory.setMaxRetryInterval(4000);
>
>
> So my questions are:
> 1- Should we be setting connectionFactory.setConfirmationWindowSize()?
> 2- Are the retry settings reasonable?
>
> Ultimately we just want to reconnect in under a minute and avoid our
> timeout.  Or, maybe we just need to set our timeout longer?
>
> Our maven dependency for the JMS driver:
> <dependency>
>     <groupId>org.apache.activemq</groupId>
>     <artifactId>artemis-jakarta-client</artifactId>
>     <version>2.32.0</version>
> </dependency>
>
> Please advise.
> Thanks
> John
>
> PLEASE NOTE: This e-mail from Redpoint Global Inc. ("Redpoint") is
> confidential and is intended solely for the use of the individual(s) to
> whom it is addressed. If you believe you received this e-mail in error,
> please notify the sender immediately, delete the e-mail from your computer
> and do not copy, print or disclose it to anyone else. If you properly
> received this e-mail as a customer, partner or vendor of Redpoint, you
> should maintain its contents in confidence subject to the terms and
> conditions of your agreement(s) with Redpoint.
>

Reply via email to