Scenario: I am running a private chain having some authority nodes. The entire network is running fine.
-
Question
How should I add more authority nodes in the network. Other than the ones defined in genesis file.
-
Attempt 1
I modified genesis file of all the nodes in the network and restarted them. They all agree upon the new authority. It has been accepted by the network.
-
Problem
Now I add a new non-authority node with the updated genesis file. It does not sync correctly, instead it stops at block #2 after an error:
Error: Engine(NotProposer(Mismatch { expected: 00ad89…, found: 0068… }))
-
Possible Solution
I change the genesis and remove the one authority which was added previously and try syncing it. It syncs correctly to the block at which authority was added. Then sync stops. Then I modify genesis again to add that authority to get it synced to latest block.
I am not sure if this is the correct way to add authority nodes in the network?
Info: I am running aura consensus engine using parity.
Best Answer
The OP states they are using parity, which I had missed initially. But just for general info, here is the process for geth users on a PoA network.
Use
You have to create an account for the new node using
Then add clique.propose(..) to a majority of the nodes. Try all to be safe.