Gatling JMS scenario doesn't end

Hi,

I am running a JMS test scenario.

  val steps =
    exec(jms("Send JMS test message")
    .reqreply
    .queue("QUEUE.NAME.HERE")
    .textMessage("my soap request here"))

I can see the message ending up on the queue and ultimately in the listening application, but the scenario doesn't end. It keeps running indefinitely.

Any ideas? Log output:

5:20:07.429 [INFO ] i.g.j.c.SimpleJmsClient - Got InitialContext javax.naming.InitialContext@23020bf9
15:20:07.432 [INFO ] i.g.j.c.SimpleJmsClient - Got ConnectionFactory com.ibm.mq.jms.MQQueueConnectionFactory@764a2c86
15:20:07.436 [INFO ] i.g.c.r.w.ConsoleDataWriter - Initializing
15:20:07.436 [INFO ] i.g.c.r.w.FileDataWriter - Initializing
15:20:07.436 [INFO ] i.g.m.GraphiteDataWriter - Initializing
15:20:07.439 [INFO ] i.g.c.r.w.ConsoleDataWriter - Initialized
15:20:07.445 [INFO ] i.g.m.GraphiteDataWriter - Initialized
15:20:07.455 [INFO ] i.g.c.r.w.FileDataWriter - Initialized
15:20:07.457 [DEBUG] i.g.c.c.Controller - Launching All Scenarios
15:20:07.462 [DEBUG] i.g.c.c.Controller - Finished Launching scenarios executions
15:20:07.463 [DEBUG] i.g.c.c.Controller - Setting up max duration
15:20:07.464 [INFO ] i.g.c.c.Controller - Start user #7226016095045467320-0

Extra info: I am using version 2.1.4, but also tried 2.1.7. For both versions the scenario keeps running. I am not expecting a response from the application. It seems there is a thread waiting for a reply, but I'd like Gatling to just fire and forget about it.

The JMS support was contributed by the community, and the contributors and users so far only used a request-reply model, so only this mode is currently supported.

Hi Ruben,

From your logs it looks like you are using IBM MQ client to send your JMS messages. Would you be so kind to share your jmsConfig setup? I have tried but didn't manage to get it up and running ;-( Any help will be much appreciated!

Cheers

Daniel

Hi Daniel, unfortunately I don’t have access to the code anymore. At the time I think I got the setup from here: http://gatling.io/docs/2.1.1/jms.html, but I guess you already found that page.

Hi Ruben,

Thanks for your reply. Do you happen to remember if you were indeed using IBM MQ jars? And if so, if you were connecting in in client mode or bindings mode?

cheers

Daniel

Hi,

I managed to get the setup working with the IBM MQ jars in using bindings mode. This is my config:

val jmsConfig = jms
  .connectionFactoryName("[connectionFactoryName in .bindings file]")
  .url("file://C:/temp/gatling-test/src/test/resources") //path to directory containing .bindingsfile
  .contextFactory("com.sun.jndi.fscontext.RefFSContextFactory")
  .listenerCount(1)
  .usePersistentDeliveryMode