Suppose I'm mining a block, and I still don't find the nonce. Suddenly I receive the mined block from another node. But when I try to validate it, I find it's not right. So I discard it. What happens next? I use the same transactions I start mining before, and I continue mining looking for nonces greater than the last I tried? Or, instead, I start all the process again?
-
1I think mining is a bit more complicated than you are thinking right now. For example, did you know that while you collect transactions for the next block you are going to try and mine, that in parallel, you already are starting to mine the "empty" block where there are no transactions. I see no reason why your mining process would stop until it has confirmed that a new and valid block has been created. To me, these are two separate and parellel processes.– Shawn TabriziCommented Aug 29, 2018 at 2:14
Add a comment
|
1 Answer
If you see an invalid block you just ignore it and go back to doing whatever you'd be doing if you'd never seen it. Use the transactions you were previously using, and the next nonce you were scheduled to try.
The only exception is that if there are valid transactions in the invalid block that you hadn't previously seen, you may want to add them to your pending list, as you would have if they'd been propagated to you normally.