From 97f4d098e1f70805da31d50a8de71ef021a44f24 Mon Sep 17 00:00:00 2001 From: "mergify[bot]" <37929162+mergify[bot]@users.noreply.github.com> Date: Tue, 8 Jun 2021 19:25:41 +0000 Subject: [PATCH] Add more info about how to safely change the identity of a staked validator (#17843) (cherry picked from commit 193813d49ac7649a608a6d5fe9d94ec7f9baa161) Co-authored-by: Michael Vines --- docs/src/running-validator/vote-accounts.md | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/docs/src/running-validator/vote-accounts.md b/docs/src/running-validator/vote-accounts.md index 2d559f485c..f948abc95a 100644 --- a/docs/src/running-validator/vote-accounts.md +++ b/docs/src/running-validator/vote-accounts.md @@ -165,6 +165,24 @@ change the validator identity. The follow steps assume that to modify the validator identity in your vote account 4. Restart your validator with the new identity keypair for the `--identity` argument +**Additional steps are required if your validator has stake.** The leader +schedule is computed two epochs in advance. Therefore if your old validator +identity was in the leader schedule, it will remain in the leader schedule for +up to two epochs after the validator identity change. If extra steps are not +taken your validator will produce no blocks until your new validator identity is +added to the leader schedule. + +After your validator is restarted with the new identity keypair, per step 4, +start a second non-voting validator on a different machine with the old identity keypair +without providing the `--vote-account` argument. + +This temporary validator should be run for two full epochs. During this time it will: +* Produce blocks for the remaining slots that are assigned to your old validator identity +* Receive the transaction fees and rent rewards for your old validator identity + +It is safe to stop this temporary validator when your old validator identity is +no longer listed in the `solana leader-schedule` output. + ### Vote Account Authorized Voter The _vote authority_ keypair may only be changed at epoch boundaries and