I noticed something odd while checking out the block explorer recently. A few mining pools seem to be forking their own blocks. Totally didn’t see this happening on my node though, so not sure what's going on.
Sounds like those pools might be running multiple servers for various reasons, like keeping things redundant or helping miners in different locations get better performance. They probably don’t check for duplicates before broadcasting blocks if one of their servers finds it first.
True. When two miners from the same pool hit the same block number simultaneously, one of them has to fork. The second instance of block 912721 wasn’t really a new block, just what your node saw as the best one when it got 912723 which dropped 912722 as the top.
Short and sweet: it's not on purpose. It's just how race conditions happen in big pools. A pool isn’t just one machine, ya know? There are many stratum servers all over the globe. When a miner finds a block, the pool needs to push out a fresh job fast so everyone stops working on the old block.
Yeah, decentralization sounds legit. I mean, I saw that block 912721 was in both UpdateTip events, same hash. But why the need for a second UpdateTip? It shouldn't have mattered with the fork of 912722. 912723 chose the next branch, right?
It updates block by block. So when shifting from 912722 to 912723, it’s got to briefly recognize 912721 as the best before moving on, even if it’s just for a moment.
Been thinking about this more. Honestly, I see it as a big setback that pools can fork like this. If that happens, how do they decide which branch to stick with? It’s like a gamble since mining is all about luck with finding valid blocks.