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 incremental storage of Cardano transactions in signer/aggregator #1591

Closed
6 tasks done
Tracked by #1457
jpraynaud opened this issue Mar 26, 2024 · 0 comments
Closed
6 tasks done
Tracked by #1457
Assignees
Labels
feature 🚀 New implemented feature

Comments

@jpraynaud
Copy link
Member

jpraynaud commented Mar 26, 2024

Why

We want to read data from the chain to retrieve only blocks that have not been recorded in the database yet.
This will allow deploying the signature of the Cardano transactions on the testing-preview network.

What

Implement incremental storage for Cardano transactions:

  • Detect the list of immutable file numbers for which transactions are not stored yet
  • Store the transactions of the non recorded yet immutable file number
  • Use store to retrieve transactions when creating signature and proofs

How

  • Create new CardanoTransactionImporter that does the work of TransactionParser and TransactionStore on the aggregator (and temporarily on the signer so we expect code duplication here at first)
  • Store slot_number and block_hash in Cardano transactions store in signer and aggregator (MultiEraBlock: block.hash() and block.slot())
  • Implement CardanoTransactionImporter detection of the list of immutable file numbers for which transactions are not stored yet (starting point)
  • Implement CardanoTransactionImporter retrieval of blocks given start point
  • Implement CardanoTransactionImporter storage of blocks
  • Activate the signature of Cardano transactions on testing-preview
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature 🚀 New implemented feature
Projects
None yet
Development

No branches or pull requests

4 participants