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

Replace Horizon calls with RPC #93

Merged
merged 35 commits into from
Jan 10, 2025
Merged

Conversation

aditya1702
Copy link
Contributor

@aditya1702 aditya1702 commented Dec 19, 2024

What

  • Replace horizon calls for fetching account details with RPC.
  • Use TSS to submit the channel account creation operations instead of Horizon.
  • Remove all horizon related flags, config variables and code pieces.
  • Update tests to account for the above new changes.

Why

Horizon is huge monolith that is very hard to maintain and this PR is part of org wide effort to move away from Horizon and use RPC instead which is very lightweight and easier to run than Horizon.

Known limitations

N/A

Issue that this PR addresses

Closes #75

Checklist

PR Structure

  • It is not possible to break this PR down into smaller PRs.
  • This PR does not mix refactoring changes with feature changes.
  • This PR's title starts with name of package that is most changed in the PR, or all if the changes are broad or impact many packages.

Thoroughness

  • This PR adds tests for the new functionality or fixes.
  • All updated queries have been tested (refer to this check if the data set returned by the updated query is expected to be same as the original one).

Release

  • This is not a breaking change.
  • This is ready to be tested in development.
  • The new functionality is gated with a feature flag if this is not ready for production.

@aditya1702 aditya1702 changed the title Replace horizon calls with RPC Replace Horizon calls with RPC Dec 20, 2024
@aditya1702 aditya1702 marked this pull request as ready for review January 2, 2025 21:28
Copy link
Contributor

@JakeUrban JakeUrban left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks mostly good! Just a couple minor comments and one more meaningful question.

@gouthamp-stellar
Copy link
Contributor

gouthamp-stellar commented Jan 7, 2025

One thing to note here is that if we are using RPC, we need to be sure that it is healthy (ie gethealth returns a positive result), which can take upto a few minutes if I'm not mistaken. So you may not be able to create all those channel accounts as soon as wallet backend starts up - you'd have to wait till RPC is ready to create those channel accounts right?

Copy link
Contributor

@gouthamp-stellar gouthamp-stellar left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

take a look at my comments

@aditya1702 aditya1702 merged commit 6726c10 into stellar:main Jan 10, 2025
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[SPIKE] evaluate impact of removing all calls to Horizon within the wallet backend
3 participants