(Staker only) Decrease active stake on a validator, eventually moving it
to the reserve
Internally, this instruction:
withdraws enough lamports to make the transient account rent-exempt
splits from a validator stake account into a transient stake account
deactivates the transient stake account
In order to rebalance the pool without taking custody, the staker needs
a way of reducing the stake on a stake account. This instruction splits
some amount of stake, up to the total activated stake, from the
canonical validator stake account, into its "transient" stake
account.
The instruction only succeeds if the transient stake account does not
exist. The amount of lamports to move must be at least rent-exemption
plus max(crate::MINIMUM_ACTIVE_STAKE, solana_program::stake::tools::get_minimum_delegation()).
[] Stake pool
[s] Stake pool staker
[] Stake pool withdraw authority
[w] Validator list
[w] Reserve stake account, to fund rent exempt reserve
(Staker only) Decrease active stake on a validator, eventually moving it to the reserve Internally, this instruction:
max(crate::MINIMUM_ACTIVE_STAKE, solana_program::stake::tools::get_minimum_delegation()).[]Stake pool[s]Stake pool staker[]Stake pool withdraw authority[w]Validator list[w]Reserve stake account, to fund rent exempt reserve[w]Canonical stake account to split from[w]Transient stake account to receive split[]Clock sysvar[]System program[]Stake program