<p>What you describe happens normally and is not an issue in practice.</p>
<blockquote>
<p>Even if one eventually wins out wouldn't a lot of people lose money because of how many transactions were invalidated?</p>
</blockquote>
<p>No, those transactions are included in later blocks. I'm not sure of the exact method but I think it must be either that nodes return transactions from stale blocks to their mempool or because the originator routinely retransmits the transaction. Either way, I believe this normally gets resolved quickly without any need for human intervention anywhere.</p>

CC BY-SA 4.0
2021-06-01T10:54:14.667Z
That's exactly it. Transactions from reverted blocks are added back to mempools.
Pieter Wuille
CC BY-SA 4.0
2021-06-01T09:19:09.547Z
2021-06-01T09:19:09.547Z
RedGrittyBrick
<p>Ok lets say there are two pools. Pool A and Pool B they are on opposite sides of the world. Lets say that pool A finds a hash that works for the current block and that pool B also finds a hash for the current block. They both start broadcasting to others on the network. How long would this take to resolve. What is to prevent two competing instances of Bitcoin? Lets say that half of the pools accepts A solution and half Accept B solution. They would have roughly equal mining power, how many blocks would it take to say one is invalid and what if the two blocks stayed equally matched? Even if one eventually wins out wouldn't a lot of people lose money because of how many transactions were invalidated?</p>

CC BY-SA 4.0
2021-06-01T17:45:57.033Z
The situation would be resolved as soon as the next block is mined because the miner would have to choose one of the two competing tips to build on.
Mike D
<mining-pools><broadcast>
How does Bitcoin prevent race conditions?
nedrobme
# How does Bitcoin prevent race conditions?

(Asked by: username_0 on 2021-06-01)

Ok lets say there are two pools. Pool A and Pool B they are on opposite sides of the world. Lets say that pool A finds a hash that works for the current block and that pool B also finds a hash for the current block. They both start broadcasting to others on the network. How long would this take to resolve. What is to prevent two competing instances of Bitcoin? Lets say that half of the pools accepts A solution and half Accept B solution. They would have roughly equal mining power, how many blocks would it take to say one is invalid and what if the two blocks stayed equally matched? Even if one eventually wins out wouldn't a lot of people lose money because of how many transactions were invalidated?

**Tags:** mining-pools, broadcast

> **Comments:**
> **username_1**: The situation would be resolved as soon as the next block is mined because the miner would have to choose one of the two competing tips to build on.  

---

## 1 answers

### Answer by username_2 on 2021-06-01. Score: 2

What you describe happens normally and is not an issue in practice.

> Even if one eventually wins out wouldn't a lot of people lose money because of how many transactions were invalidated?

No, those transactions are included in later blocks. I'm not sure of the exact method but I think it must be either that nodes return transactions from stale blocks to their mempool or because the originator routinely retransmits the transaction. Either way, I believe this normally gets resolved quickly without any need for human intervention anywhere.

> **Comments:**
> **username_3**: That's exactly it. Transactions from reverted blocks are added back to mempools.  

---

