1

I am getting this issue after performing the solution of this issue How can we restart the chain if it becomes stuck during data migration?

Tried to run the existing chain with new chain spec with bad blocks and new binary with all validators then it started producing block also doing the block finalization.

We basically started with 2 validators then chain started producing blocks then we added all validators then it started finalizing blocks also. After that chain produced about 130 blocks and finalizing also. Then with old chainspec and binary we started achieve node then chain finality stopped with below error in log.

Sep 23 12:33:51 node[3498514]: 2023-09-23 12:33:51 Detected prevote equivocation in the finality worker: Equivocation { round_number: 6425345, identity: Public(f87122bdc0f31343bba1c1b8f11e1584e5ed42234ce479df89608aecde43260d (5HgTLj1r...)), first: (Prevote { target_hash: 0x842a42a7556d5f338411f1dafc08a87daf855a7f4284a8ea3032fd5d1c6e0a43, target_number: 1440577 }, Signature(55b96a8677651787154021323d3853cccdb1ee98b33dda98afaaf75e0bd9f61a22d0af8567561898e2b5dd4519325b220ee55cc908d007b9032a06d3188c5706)), second: (Prevote { target_hash: 0xac2fbb087b3b2f89ce6e4e23f4587ce9038c26ef7f673750ef60496f6346f7da, target_number: 1440676 }, Signature(f75ca444dfab57bc72f340413c813941daf5b0e5c7e129e29b0ff6f9a9e943e102f94b97d115d0e95ade1436ebea7568a15ced586c660d6b7615cdb57dc0d50e)) }
0

1 Answer 1

3

There aren't enough details in this question to be able to solve your problem. If when you started the archive node you stated seeing GRANDPA equivocations it means that this node is actually voting. Regardless, if finality is not progressing it also means that not enough validators are voting (you need >2/3 of the validators online to be able to finalize). It's also possible that some validators are voting on blocks that the others can't import, I am not sure if you added badBlocks to the chain spec, but if you did, you need to do this for all validators and not just a few. Have a look at these questions which can help you debug your issue:

Edit: is the archive node running as a validator? Also please check the answers above, in particular the usage of the grandpa_roundState RPC endpoint to figure out what is the current state of the round (i.e. who is not voting). You can also run your nodes with -lgrandpa=debug and check for a log message like Waiting to import block {hash} before {N} round messages can be imported. This should indicate that someone is voting on a chain that descends from badBlocks, probably because you didn't update all the validators to the new chainspec at once. Since the nodes with the new chainspec will refuse to import those blocks, this means that the round doesn't make progress (since they can't process those votes).

8
  • Also we used new chainspec for archive node
    – Pankaj
    Commented Sep 25, 2023 at 11:03
  • Updated question with more information please check.
    – Pankaj
    Commented Sep 25, 2023 at 11:16
  • Archive node is not validator in our case.
    – Pankaj
    Commented Sep 25, 2023 at 15:05
  • Our chain is based on POA for now. I can't find out the grandpa_roundState endpoint in our chain.
    – Pankaj
    Commented Sep 25, 2023 at 15:06
  • 1
    The issue is solved. As chain was just producing the block not finalising the block so with the help of -lgrandpa=trace i checked whats happening on the chain. Then I stopped all the nodes and revert all the nodes to the last finalise block and start the nodes with the same new chainspec and binary then it worked. - Thanks Andre silva
    – Pankaj
    Commented Sep 27, 2023 at 6:53

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.