Skip to content
This repository has been archived by the owner on Nov 15, 2023. It is now read-only.

nomination-pools: Add extrinsic to start destroying a invalid pool #10793

Closed
emostov opened this issue Feb 4, 2022 · 2 comments
Closed

nomination-pools: Add extrinsic to start destroying a invalid pool #10793

emostov opened this issue Feb 4, 2022 · 2 comments
Labels
Z1-easy Can be fixed primarily by duplicating and adapting code by an intermediate coder Z2-medium Can be fixed by a coder with good Rust knowledge but little knowledge of the codebase. Z6-mentor An easy task where a mentor is available. Please indicate in the issue who the mentor could be.

Comments

@emostov
Copy link
Contributor

emostov commented Feb 4, 2022

A pool can become "invalid" if the ratio of points to balance becomes too high. (This is because it increases the risk of saturating arithmetic - more details in the pallet docs.)

There should be a permissionless extrinsic that allows the destroy process to start (stop nominating and block any new joiners, etc) if the points to balance ratio becomes too high. In the future there may be other things we need to check as well.

Should wait until #10694 is merged to start working on this.

@emostov emostov added Z2-medium Can be fixed by a coder with good Rust knowledge but little knowledge of the codebase. Z1-easy Can be fixed primarily by duplicating and adapting code by an intermediate coder Z6-mentor An easy task where a mentor is available. Please indicate in the issue who the mentor could be. labels Feb 4, 2022
@emostov emostov changed the title pallet-nominations: Add extrinsic to start destroying a invalid pool nomination-pools: Add extrinsic to start destroying a invalid pool Feb 4, 2022
@emostov emostov mentioned this issue Feb 4, 2022
4 tasks
@emostov
Copy link
Contributor Author

emostov commented Feb 15, 2022

Thinking about this more, we could just have a set_state_other that can be permissionlessly called when the pool is a. cannot be joined due to bad points:balance ratio and b. the state being set is destroying

@emostov
Copy link
Contributor Author

emostov commented Apr 6, 2022

This was implemented as the set_state_other extrinsic

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Z1-easy Can be fixed primarily by duplicating and adapting code by an intermediate coder Z2-medium Can be fixed by a coder with good Rust knowledge but little knowledge of the codebase. Z6-mentor An easy task where a mentor is available. Please indicate in the issue who the mentor could be.
Projects
Status: Done
Development

No branches or pull requests

1 participant