0
votes

I am trying to implement spring batch remote partitioning using spring integration. I am triggering the master using standalone app and slaves are running on jboss eap 6.1 cluster. I am able to trigger the job and i can see slaves also got triggered. but after some time master jms connection is timing out. can someone shed me a light, how can i configure this timeout settings..

2636699 21/11 16:59:55,580[org.springframework.jms.listener.DefaultMessageListenerContainer#0-378] WARN jms.listener.DefaultMessageListenerContainer.handleListenerSetupFailure - Setup of JMS message listener invoker failed for destination 'queue-screening-replies-partitioning' - trying to recover. Cause: Session is closed 2636699 21/11 16:59:55,580[org.springframework.jms.listener.DefaultMessageListenerContainer#0-378] INFO jms.listener.DefaultMessageListenerContainer.refreshConnectionUntilSuccessful - Successfully refreshed JMS Connection

I am getting this kind of errors..

Thanks in advance..

--M K

1

1 Answers

0
votes

Either the network or your broker is timing out the connection.

Consult your broker documentation to enable some kind of heartbeats/timeouts to keep the connection open.

Or, it would be better to reduce your partition sizes (increase the number of partitions) so they complete in a reasonable time.

EDIT:

Also, configure the outbound gateway with a <reply-listener/> and use a fixed, named, reply queue and the gateway will be able to recover from the dropped connection.

But I would still recommend smaller partitions in general.