Why would Orphan blocks?
lizhi last edited by | Tip lizhi
Why would Orphan blocks ? How to avoid such a thing happen?
Well, Orphan blocks happen, if two different miners find a block at nearly the same time.
The protocol selects one of the blocks and the other one becomes orphan.
It’s not a bug, but a feature.
If you mean, that a pool creates a high number of orphan blocks, probably the pool’s connection to the feathercoin network is too slow or the pool server is overloaded, so the pools found blocks are not propagated fast enough.
The same is valid for the connection between a miner and the pool server. If the miners found blocks or share are not propagated fast enough, they become orphan.
I’ve just been discusing block validation, in the code, or lack of it. Can you see where the validation is done in the code?.
How is vailidation done (in main.cpp)?.
Is is done on agreement of calculation and how fuzzy are they? ie how far out does a block currently have to be to be different and by what parameters to be rejected by other mining nodes?
No clue yet.
will check the code sometimes.
In addition to the block winning, where one transaction can end orphaned because a different correct solution was proporgated to 51% of the network, some block are deemed invalid because the contain confilcting transactions.
In addition to the hash criteria, a block needs to contain only valid, non-conflicting transactions. So the other main task for miners is to carefully validate all the transactions that go into their blocks, otherwise they won’t get any reward for their work!