I've read some introduction to Managing Fork in Solana Docs (i.e. https://docs.solana.com/cluster/managing-forks#pruning-and-squashing),

but I'm confused about the example.

In the section Active Forks, there are the following active forks:

  • {4, 2, 1}
  • {5, 2, 1}
  • {6, 3, 1}
  • {7, 3, 1} and all of their length are 3.


In the example, with a rollback depth of 2, consider a vote on 5 versus a vote on 6.

a vote on 5: Solana Docs said The new root is 2

a vote on 6: Solana Docs said The tree remains with a root of 1

why are their new roots different? in my view, their new root should be same one because of same length of active forks 3 and same rollback depth 2?

1 Answer 1


That is because of the virtual entity which is marked as | in the diagram. In case next leader did not observe the last vote slot, it start slot with virtual PoH entries. This virtual PoH entry is just an empty tick and just a guessed version of the next leader about the previous leader. Voting on 5 means agree with 5, agree with virtual entity and agree with 2.(3 agreements). Voting on 6 means agree with 6, agree with 3 and agree with virtual entity. But virtual entity is not actually generated by actual leader and thus can not remain as a root. Thus 1 remain as a root.

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.