[rabbitmq-discuss] Exactly Once Delivery

Tony Menges amenges at vmware.com
Thu Aug 5 17:16:14 BST 2010

The JMS provider sets the message id. It is supposed to be unique enough to be used for a "historical repository" but the scope of uniqueness is left to the provider. It is recommended that it should be at least unique for a given "installation". I don't think this helps on the publisher side since as you pointed out the notification of the completion of the publish might not make it back to the producer.

JMS requires the provider to set the redelivered flag (and optionally the delivery count) field if it thinks the message has been given to the application before. The application may or may not have seen it but this flag can be used to trigger the check for a duplicate by the application. The use of unique message ids helps on this end.

Tony Menges
VMware, Inc.

On 8/5/10 7:25 AM, "Matthew Sackman" <matthew at rabbitmq.com> wrote:

On Thu, Aug 05, 2010 at 03:17:28PM +0100, Michael Bridgen wrote:
> For producers, duplicate publishing is simply prohibited.

So that seems to suggest that every messages is universally unique?

If this is correct, who's responsibility is it to add GUIDs (or some
such) to every message? Does the client library do that automatically?

rabbitmq-discuss mailing list
rabbitmq-discuss at lists.rabbitmq.com

More information about the rabbitmq-discuss mailing list