Per my earlier response, this is a broker bug. It is mishandling the
presence of the amqp header section to carry the priority or ttl, but
having the durable flag being defaulted, which means non durable. I
didnt see it in my tests as I inspected the consumed message, which
correctly states it is non persistent due to passing the same header
detail through.


On Fri, 26 Apr 2019 at 05:29, Hardik Jethava <[email protected]> wrote:
>
> Thanks Robbie and Jeremy for your quick response.
>
> I tried with below versions of ActiveMQ Broker:
> - 5.14.4
> - 5.15.9
>
> I can see this issue with both versions of Broker when I use Qpid JMS client 
> v0.20.0 onwards.
>
> Also, I am attaching the sample utility that I have written to simulate the 
> issue. In this Utility:
> - LoadTest.java is main class.
> - Messages are getting published to ActiveMQ as part of ProducerThread.java
> - I have shown example of all four combination (i.e. Priority and 
> Non-Priority with and without TTL with Delivery mode to "Non Persistent" for 
> all 4 cases), In this case I can see "Non Persistent" on ActiveMQ console 
> only when I set TTL to 0 for Non-Priority(Default priority) messages where as 
> for other 3 cases it publishes messages as Persistent.
>
> Let me know if you need more details.
>
> Regards,
> Hardik
>
> On 4/25/19, 6:57 PM, "Robbie Gemmell" <[email protected]> wrote:
>
>     Sent by an external sender
>     ------------------------------
>
>     Responses go to the mailing list, as noted on the discussion page
>     http://qpid.apache.org/discussion.html if you dont join the list youll
>     need to use the archive/forum interfaces also detailed there. I
>     already responded to your post earlier.
>
>     Robbie
>
>     On Thu, 25 Apr 2019 at 13:53, Hardik Jethava <[email protected]> wrote:
>     >
>     > Let me know if I should post this question somewhere else(may be some 
> other email address). Thanks!!
>     >
>     > From: Hardik Jethava <[email protected]>
>     > Date: Thursday, April 25, 2019 at 2:15 PM
>     > To: "[email protected]" <[email protected]>
>     > Subject: Message delivery mode automatically changes to "Persistent"
>     >
>     > 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
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to