Question

We are using hornetq-core 2.2.21.Final stand-alone after reading a non-transnational message , the message still remains in queue although it acknowledge session is created using

sessionFactory.createSession(true, true, 0)

locator setting:

val transConf = new TransportConfiguration(classOf[NettyConnectorFactory].getName,map)
val locator = HornetQClient.createServerLocatorWithoutHA(transConf) 
locator.setBlockOnDurableSend(false)
locator.setBlockOnNonDurableSend(false)
locator.setAckBatchSize(0) // also tried without this setting
locator.setConsumerWindowSize(0)// also tried without this setting

Message is acknowledge using message.acknowledge ()

I think that the problem might be two queues on the same address also tried to set the message expiration but it didn't help , messages are still piling up in the queue
please advise

Was it helpful?

Solution

It seems you are using the core api. Are you explicitly calling acknowledge on the messages?

If you have two queues on the same address ack will only ack the messages on the queue you are consuming. On that case the system is acting normally.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top