[
https://issues.apache.org/jira/browse/FINERACT-1744?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Mihaly Dallos updated FINERACT-1744:
------------------------------------
Fix Version/s: 1.9.0
> System idempotency
> ------------------
>
> Key: FINERACT-1744
> URL: https://issues.apache.org/jira/browse/FINERACT-1744
> Project: Apache Fineract
> Issue Type: Improvement
> Reporter: Arnold Galovics
> Assignee: Zoltán Nébli
> Priority: Major
> Labels: PepperSoup
> Fix For: 1.9.0
>
>
> h3. Goal
> The goal of this ticket is to implement a system-wide (API and external
> events) idempotency solution for Fineract.
> h3. Background
> Fineract is deployed in many organizations where high-availability and
> fault-tolerance is essential. One of the solutions to APIs suddenly crashing
> is to retry the requests to those APIs.
> In these situations it can occur that an operation is retried even though a
> former execution has already completed resulting in 2 executions of the same
> operations.
> The system needs to be able to detect these scenarios and prevent executing
> the same request multiple times.
> Also, the emitted external events Fineract is sending should provide a
> similar behavior to the above to detect events which are for the same
> operation.
> h4. Idempotency imply changes in the following
> * API contract: {{Idempotency-Key}} header
> * External event framework contract. Use of {{idempotencyKey}} attribute
> * Command execution recap
> * Storing the idempotency information; {{m_portfolio_command_source}} table
> * Introducing proper statuses to commands; {{UNDER_PROCESSING}} and
> {{ERROR}} status.
> * Command execution changes
> * Purging commands
>
--
This message was sent by Atlassian Jira
(v8.20.10#820010)