The standard rule in bitcoin is that if you see two blocks on a chain that has the same work, you accept the one that you saw first as the correct one.

If this extended to P2Pool chains, some nodes could see share blocks before a real block. Would the P2Pool members not then accept their own pool members real solved block? I would hope not!

2 Answers 2


The p2pool sharechain and the bitcoin blockchain operate similarly, but independently. I do not believe there is any requirement that a "real" block be accepted into the p2pool sharechain.

What I think you are really concerned about is that the p2pool nodes may see a "real" block and not do their part to get it into the blockchain so that everyone gets paid. On that account you can rest assured.

In the source code, have a look at p2pool/node.py ("GOT BLOCK FROM PEER! Passing to bitcoind!") and p2pool/work.py ("GOT BLOCK FROM MINER! Passing to bitcoind!") Regardless of whether the new bitcoin block ends up in the p2pool sharechain, all nodes who become aware of the block relay it to bitcoind to help get it in the blockchain.

  • So it's possible you won't get a share in the share chain from it, but the pool will still get it's pay out? That's interesting, I think I had it in my head that the pool would only pay out of the block made it into the share chain. Seems like an improvement that P2Pool could make if it's not currentyly automatically choosing full solves over partial (share-chain) solves, though.
    – morsecoder
    Feb 10, 2015 at 4:05

The p2pool sharechain is separate from the bitcoin blockchain. They don't interfere with each other in the way you describe.

  • 1
    Are you saying that a real block doesn't even count as a share on the share chain? I was assuming it would. Also, do you have any sources you could link with this answer?
    – morsecoder
    Feb 6, 2015 at 13:15
  • A "real" block would be on both chains. They are not the same chain.
    – Dr.Haribo
    Feb 6, 2015 at 21:13
  • I understand that they are not the same chain. A subset of the share chain's blocks will actually be real solved blocks. I'm more looking for some sources that show that this problem has been solved. A link to the relevant lines of code would be helpful.
    – morsecoder
    Feb 7, 2015 at 4:33

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.