You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@activemq.apache.org by "leejackson7@cox.net" <le...@cox.net> on 2019/06/05 16:18:39 UTC
Can consumers acknowledge/confirm receipt of a message versus auto
acknowledgement?
Hi! We have a consumer written using the cms_browserGetNextMessages function
written by Apache
(https://github.com/fusesource/fusemq-c/blob/master/fusemqc-client/src/main/cpp/CMS_QueueBrowser.cpp)
that is written in C programming language.
We are experiencing missing messages. We post messages to a JMS Gateway.
The Gateway sends to a broker and we consume the messages off this broker.
Is it possible to have the consumer code confirm or acknowledge each message
individually? Right now the behavior we are seeing seems to indicate the
consumer is auto acknowledging the messages in the broker at one time.
Thanks! Kim
--
Sent from: http://activemq.2283324.n4.nabble.com/ActiveMQ-User-f2341805.html
Re: Can consumers acknowledge/confirm receipt of a message versus
auto acknowledgement?
Posted by Gabriel Almeida Goncalves <ga...@serpro.gov.br>.
Hi Kim.
I don't know if this will help, but I guess its possible..
I'm using the Apache.NMS.ActiveMQ for C#. There, to acknowledge messages individually,
we must chose the AcknowledgeMode.IndividualAcknowledge when instantiating a session and then
call Message.Acknowledge for each message. Like:
mySession = connection.CreateSession(AcknowledgementMode.IndividualAcknowledge);
(...)
myMessage.Acknowledge();
It seems that there are analogous mechanisms in the library you're using:
https://github.com/fusesource/fusemq-c/blob/master/fusemqc-client/src/main/cpp/CMS_Message.h Line 142: cms_status cms_acknowledgeMessage(CMS_Message* message);
https://github.com/fusesource/fusemq-c/blob/master/fusemqc-client/src/main/cpp/CMS_Session.cpp Line 52: cms_status cms_createSession(CMS_Connection* connection, CMS_Session** session, CMS_ACKNOWLEDGMENT_MODE ackMode)
Gabriel Almeida Goncalves
Analista
Superintendência de Desenvolvimento
Diretoria de Desenvolvimento
(31)3311-6739
----- Mensagem original -----
De: "Timothy Bish" <ta...@gmail.com>
Para: "users" <us...@activemq.apache.org>
Enviadas: Quarta-feira, 5 de junho de 2019 15:09:10
Assunto: Re: Can consumers acknowledge/confirm receipt of a message versus auto acknowledgement?
On 6/5/19 12:18 PM, leejackson7@cox.net wrote:
> Hi! We have a consumer written using the cms_browserGetNextMessages function
> written by Apache
I don't see this Apache person you mention listed in the committers for
the that project....
> (https://github.com/fusesource/fusemq-c/blob/master/fusemqc-client/src/main/cpp/CMS_QueueBrowser.cpp)
> that is written in C programming language.
> We are experiencing missing messages. We post messages to a JMS Gateway.
> The Gateway sends to a broker and we consume the messages off this broker.
> Is it possible to have the consumer code confirm or acknowledge each message
> individually? Right now the behavior we are seeing seems to indicate the
> consumer is auto acknowledging the messages in the broker at one time.
It is unclear what you are asking for here, you reference a QueueBrowser
implementation but are asking about consumer code so I'm not sure what
you are looking to do. A QueueBrowser doesn't support any acknowledge
types as it is a non-destructive view of messages on a Queue. The
browser also makes no guarantees about it showing you every message on a
Queue so if you are relying on that property then you will likely run
into trouble.
Looking at the source code for the C wrapper client a message consumer
could have acknowledgment types other than auto specified, the values
are here
https://github.com/fusesource/fusemq-c/blob/master/fusemqc-client/src/main/cpp/cms.h#L82
>
> Thanks! Kim
>
>
>
> --
> Sent from: http://activemq.2283324.n4.nabble.com/ActiveMQ-User-f2341805.html
>
--
Tim Bish
-
"Esta mensagem do SERVIÇO FEDERAL DE PROCESSAMENTO DE DADOS (SERPRO), empresa pública federal regida pelo disposto na Lei Federal nº 5.615, é enviada exclusivamente a seu destinatário e pode conter informações confidenciais, protegidas por sigilo profissional. Sua utilização desautorizada é ilegal e sujeita o infrator às penas da lei. Se você a recebeu indevidamente, queira, por gentileza, reenviá-la ao emitente, esclarecendo o equívoco."
"This message from SERVIÇO FEDERAL DE PROCESSAMENTO DE DADOS (SERPRO) -- a government company established under Brazilian law (5.615/70) -- is directed exclusively to its addressee and may contain confidential data, protected under professional secrecy rules. Its unauthorized use is illegal and may subject the transgressor to the law's penalties. If you're not the addressee, please send it back, elucidating the failure."
Re: Can consumers acknowledge/confirm receipt of a message versus
auto acknowledgement?
Posted by Timothy Bish <ta...@gmail.com>.
On 6/5/19 12:18 PM, leejackson7@cox.net wrote:
> Hi! We have a consumer written using the cms_browserGetNextMessages function
> written by Apache
I don't see this Apache person you mention listed in the committers for
the that project....
> (https://github.com/fusesource/fusemq-c/blob/master/fusemqc-client/src/main/cpp/CMS_QueueBrowser.cpp)
> that is written in C programming language.
> We are experiencing missing messages. We post messages to a JMS Gateway.
> The Gateway sends to a broker and we consume the messages off this broker.
> Is it possible to have the consumer code confirm or acknowledge each message
> individually? Right now the behavior we are seeing seems to indicate the
> consumer is auto acknowledging the messages in the broker at one time.
It is unclear what you are asking for here, you reference a QueueBrowser
implementation but are asking about consumer code so I'm not sure what
you are looking to do. A QueueBrowser doesn't support any acknowledge
types as it is a non-destructive view of messages on a Queue. The
browser also makes no guarantees about it showing you every message on a
Queue so if you are relying on that property then you will likely run
into trouble.
Looking at the source code for the C wrapper client a message consumer
could have acknowledgment types other than auto specified, the values
are here
https://github.com/fusesource/fusemq-c/blob/master/fusemqc-client/src/main/cpp/cms.h#L82
>
> Thanks! Kim
>
>
>
> --
> Sent from: http://activemq.2283324.n4.nabble.com/ActiveMQ-User-f2341805.html
>
--
Tim Bish