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

Load test: x/leverage supply and unsupply #1209

Closed
4 tasks
Tracked by #1315
robert-zaremba opened this issue Aug 3, 2022 · 2 comments
Closed
4 tasks
Tracked by #1315

Load test: x/leverage supply and unsupply #1209

robert-zaremba opened this issue Aug 3, 2022 · 2 comments

Comments

@robert-zaremba
Copy link
Member

Test scenario

We use the genesis file from: #1206

  • create 300 threads
  • in each thread
    • take an unused account from the pool (a1...a1000) -- we can't use same account in 2 threads at the same time, because it will create a nonce conflict.
    • draw a number in [0,1] of action = {0: supply, 1: unsupply}
    • perform action with 1 random token (eg 1umee)
    • put an account back to the pool
  • Do it 10k times.
  • NOTE: some transaction will fail because it may happen that we will use one account in a row to do more unsupply than he previously supplied, or do more supply than his available balance.

For Admin Use

  • Not duplicate issue
  • Appropriate labels applied
  • Appropriate contributors tagged
  • Contributor assigned/self-assigned
@toteki
Copy link
Member

toteki commented Aug 5, 2022

Since the qa repository has query support too (including bank balances) we could modify this to only supply a subset of token balance, or withdraw a subset of uToken balance, to prevent most transactions from failing.

The random approach would also be fine (to include more failed transactions)

@robert-zaremba
Copy link
Member Author

I think it is an extra feature to have transactions which should fail. We can even predict if the tx will fail or not by calculating the balance in python, and double check the final balance at the end.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants