snarkOS
snarkOS copied to clipboard
Safe validator initial start
🚀 Feature
Less down time when starting a validator.
Motivation
For network launch in testnet, starting too many validators at the same time has caused network halts. These halts are avoidable if the validator is synced when the bond_validator call is made.
Implementation options
- Running a node with
start --validatorin the case bond has not been called will run the node as client watching forbond_validator. As soon as that transaction is seen the node will shift to validator mode. - Allow bond_public transaction to be sent from validator when it catches up to head. This is effectively a script that runs the validator as a client and then when the client is close to tip issues the
bond_validator
In our testing, we start validators all at once all the time and we don't see network halts. What are the details of these halts?
Thank you for the suggestion!
- would get quite clunky and potentially incur a large performance hit when implemented within snarkOS
- could be part of the solution, I would encourage coordination with ANF on such a script as part of the validator onboarding guide. It will also have to monitor whether the submitted transaction succeeded.