Details
-
Type:
Improvement
-
Status: Resolved
-
Priority:
Major
-
Resolution: Fixed
-
Affects Version/s: None
-
Fix Version/s: 2.17.0
-
Component/s: camel-rabbitmq
-
Labels:None
-
Estimated Complexity:Novice
Description
Currently, when publishing a message through Camel there is no way make sure that the message was actually delivered to appropriate queues which does not meet the reliability requirements of certain mission-critical applications. While there are two ways of doing this - AMQP transactions and RabbitMQ's Confirms - the former is considered overly heavyweight and latter is preferred as per RabbitMQ's documentation.
New configuration properties should be added to RabbitMQ endpoint - a boolean property for enabling publisher acknowledges and a long property for configuring a timeout (in most cases the publisher will not want to wait forever for a confirmation).
I am almost done with the implementation - the only thing left to do is to perform a bit of code cleanup and add a few integration tests to verify that the acknowledges are working correctly.