Application functions detect duplicate messages and inconsistent data or are designed to be immune to these conditions.
|How can an application component cope with message duplicates or data inconsistencies that could lead to duplicate function execution?|
In case of Storage Offerings displaying Eventual Consistency, application components can possibly read obsolete information that has already been processed. Still, the component may choose to process the data again as changes cannot be seen. The same problem arises, if application components of a Distributed Application exchange information asynchronously via a Message-oriented Middleware assuring At-least-once Delivery. In this case duplicate messages can lead to duplicate processing.
The Idempotent Processor ensures that duplicate messages and inconsistent data do not affect application functionality either through inconsistency detection identifying message duplicates and data inconsistencies or through idempotent semantics of application functions enabling them to be erroneously executed multiple times with the same outcome.