Hi Team,

We are using Qpid JMS 0.37.0 Library(Java) for publishing and consuming 
messages to ActiveMQ. With that when we try to publish message to ActiveMQ 
using producer.send(…) and set Delivery Mode to Non Persistent, in that case 
when messages gets published to ActiveMQ, Persistence is set to “Persistent” 
instead of “Non Persistent”. Same thing was working fine with Qpid JMS 0.11.1 
Library.

In our case we are creating Anonymous producers and we use them to publish 
message to particular destination with Proper delivery mode, Priority and TTL 
using 
this<https://docs.oracle.com/javaee/7/api/javax/jms/MessageProducer.html#send-javax.jms.Destination-javax.jms.Message-int-int-long->
 API.

Additional observation:

  *   If we set Priority(i.e. >=5) on producer in that case even if I set 
delivery mode to “Non Persistent”, message is getting published as “Persistent”.
  *   If we keep default priority(i.e. 4) and set TTL on producer in that case 
even if I set delivery mode to “Non Persistent”, message is being sent as 
“Persistent”.

Note: Both of the above mentioned cases works fine with Qpid JMS 0.11.1 
library((i.e. Messages gets published as “Non Persistent”) but not with Qpid 
JMS 0.20.0 onwards.

Can you please let me know why message persistence doesn’t work properly for 
Priority messages and any non-priority message having TTL with  Qpid JMS 0.20.0 
onwards?

Regards,
Hardik

Reply via email to