-
Notifications
You must be signed in to change notification settings - Fork 501
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
services/horizon: Add --max-assets-per-path-request flag #4046
Conversation
eefb01c
to
4d7d6a6
Compare
97021a3
to
a40969c
Compare
services/horizon/CHANGELOG.md
Outdated
@@ -7,7 +7,8 @@ file. This project adheres to [Semantic Versioning](http://semver.org/). | |||
|
|||
### Changes | |||
|
|||
* Add an endpoint that allows querying for which liquidity pools an account is participating in | |||
* Add a new feature flag `--max-assets-per-path_request` (`15` by default) that sets the number of assets to consider for strict-send and strict-recieve ([4046](https://github.com/stellar/go/pull/4046)) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit: I would replace "feature flag" with "horizon flag"
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
* Add a new feature flag `--max-assets-per-path_request` (`15` by default) that sets the number of assets to consider for strict-send and strict-recieve ([4046](https://github.com/stellar/go/pull/4046)) | |
* Add a new feature flag `--max-assets-per-path-request` (`15` by default) that sets the number of assets to consider for strict-send and strict-recieve ([4046](https://github.com/stellar/go/pull/4046)) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done
services/horizon/CHANGELOG.md
Outdated
@@ -7,7 +7,8 @@ file. This project adheres to [Semantic Versioning](http://semver.org/). | |||
|
|||
### Changes | |||
|
|||
* Add an endpoint that allows querying for which liquidity pools an account is participating in | |||
* Add a new feature flag `--max-assets-per-path_request` (`15` by default) that sets the number of assets to consider for strict-send and strict-recieve ([4046](https://github.com/stellar/go/pull/4046)) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
* Add a new feature flag `--max-assets-per-path_request` (`15` by default) that sets the number of assets to consider for strict-send and strict-recieve ([4046](https://github.com/stellar/go/pull/4046)) | |
* Add a new feature flag `--max-assets-per-path-request` (`15` by default) that sets the number of assets to consider for strict-send and strict-recieve ([4046](https://github.com/stellar/go/pull/4046)) |
Is it possible to bump up the default though? 15 seems arbitrary and looking at response times of requests with 15 assets, the pathfinder should be able to handle a multiple of that easily. Trying to avoid situations where we use, e.g. 100, on our deployment and are not able to fall back to SDF Horizon (during maintenance/downtime/upgrades/disaster recovery etc.) because of a much lower constraint. @bartekn |
@marcinx We're not going to change this number for SDF's Horizon in the near future. It's unclear what the impact of raising the number is for our load. We have a large number of requests, and even small performance changes have large consequences when multiplied across all our traffic. We would need to simulate that before making any tweaks here. As far as fall back goes, if your use case requires this very large path, it would be a great idea to consider a backup or secondary cluster for the scenarios you mentioned. It is dangerous in general, and not recommended, to rely on the SDF Horizon instance for production use. |
@ire-and-curses Okay, thanks for the reply. That's a good idea and I had a setup with a separate Horizon instance just for path payments in mind already. Or maybe we'll come up with a way to iterate over path requests in our code eventually. |
PR Checklist
PR Structure
otherwise).
services/friendbot
, orall
ordoc
if the changes are broad or impact manypackages.
Thoroughness
.md
files, etc... affected by this change). Take a look in the
docs
folder for a given service,like this one.
Release planning
needed with deprecations, added features, breaking changes, and DB schema changes.
semver, or if it's mainly a patch change. The PR is targeted at the next
release branch if it's not a patch change.
What
Introduce a flag that sets the max number of assets to consider during strict-send or strict-receive.
Why
The maximum (15) is hardcoded, and making it configurable grants users some flexibility.
Known limitations
N/A