STOMP 1.1 NACK test and activemq.prefetchSize question

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

STOMP 1.1 NACK test and activemq.prefetchSize question

mjustin_de
Hello,

I am trying to set up a STOMP 1.1 NACK test for ActiveMQ 5.6.0 and
Apollo 1.3.

The tests first sends three messages to a queue.

Then it subscribes the destination queue with a prefetch size of 3, like

SUBSCRIBE
destination:/queue/ExampleQueue
ack:client-individual
id:{A06FD6DB-6487-49DB-9396-258F5230306E}
activemq.prefetchSize:3

and for two messages it sends ACK, for one message NACK.

The connection then is closed and a new connection tries to receive the
NACKed message.

* I can see in the Admin web interface that all messages disappeared
from "Pending Messages", and "Messages Enqueued" equals "Messages
Dequeued". So I can not see any pending message while I would expect
one, either in the same queue or in some dead letter queue

* also there is a message count of 1 in the Topic
ActiveMQ.Advisory.MessageDLQd.Queue.ExampleQueue (but can not read the
messages with the STOMP client)



Is activemq.prefetchSize the correct header to set the prefetch size on
a subscribe frame if the ActiveMQ connection uses STOMP 1.1?

Can this header also be used with Apache Apollo, or is there a different
header?


Many thanks in advance

--
Michael Justin
habarisoft - Enterprise Messaging Software for Delphi
http://www.habarisoft.com/

Reply | Threaded
Open this post in threaded view
|

Re: STOMP 1.1 NACK test and activemq.prefetchSize question

ceposta
From what I understand, Apollo uses the idea of consumer "credit window" to decide how many messages to send down to the client that haven't been ACKed. use the "credit" header in your stomp frame to set the credit window:

http://activemq.apache.org/apollo/documentation/user-manual.html#Subscription_Flow_Control
Reply | Threaded
Open this post in threaded view
|

Re: STOMP 1.1 NACK test and activemq.prefetchSize question

mjustin_de
Hi Christian, thank you for the link!

>From what I understand, Apollo uses the idea of consumer "credit window" to
decide how many messages to send down to the client that haven't been ACKed.
use the "credit" header in your stomp frame to set the credit window:

http://activemq.apache.org/apollo/documentation/user-manual.html#Subscription_Flow_Control

--
Michael Justin