Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement crash recovery for all SATP phases and communicate abnormalities to other Cacti nodes #3114

Closed
RafaelAPB opened this issue Mar 15, 2024 · 4 comments
Assignees
Labels
IETF-SATP-Hermes Related to the Secure Asset Transfer Protocol as defined by the Internet Engineering Task Force.

Comments

@RafaelAPB
Copy link
Contributor

RafaelAPB commented Mar 15, 2024

SATP-Hermes has capacity to recover from failure (if a gateway goes down in the middle of a transfer, we need to make sure the state is still consistent).

Requirements:
1- update the already implemented recovery messages according to the latest Crash recovery draft. Please make sure to update the corresponding tests. Let us start with a local database sqlite (knex), and later add a distributed database.

2- Add support for logging. 1) For tests, run knex in memory (there are examples in Andres code). Add support for production (a script in package .json that creates a knex database via docker, logs are written there).

2- Implement crash recovery for other steps of the protocol, and implement tests for each. See old implementation (we need to provide a new one for the new codebase): Endpoints: d9b70e1#diff-5411943a91b209266cb4e736be0041a429d269400ebc79611682f6805001bd49
Code: d9b70e1#diff-5a137c86e2e77523a7b83b071465ec6f7b0c8ad187201cdb607b758a8f96f9ea

3- Implement organizational interoperability strategies for crash recovery: when gateway crashes emit an event (see https://rxjs.dev/guide/observer as a possible solution); see other situations that require communication with other Cacti nodes within SATP context. See communication code by Eduardo to implement this.

4 - Scientific component: technical report or academic paper showcasing how the steps 2 and 3 increase the resilience of blockchain gateways and improve communication across stakeholders.

Resources:

@RafaelAPB RafaelAPB added the IETF-SATP-Hermes Related to the Secure Asset Transfer Protocol as defined by the Internet Engineering Task Force. label Mar 15, 2024
@LordKubaya
Copy link
Contributor

hi

@RafaelAPB RafaelAPB changed the title Implement crash recovery for all SATP phases Implement crash recovery for all SATP phases and communicate abnormalities to other Cacti nodes Jul 5, 2024
@RafaelAPB
Copy link
Contributor Author

This task will be assigned to another person

@Yogesh01000100
Copy link
Contributor

Hi, @RafaelAPB noted. I will review it!

@RafaelAPB
Copy link
Contributor Author

Done. Thank you @Yogesh01000100 for your contributions, once again!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
IETF-SATP-Hermes Related to the Secure Asset Transfer Protocol as defined by the Internet Engineering Task Force.
Projects
None yet
Development

No branches or pull requests

3 participants