<p>Transactions A,B,C will be validated and added to the miners memory pool just like any other node does. If A and B are the only ones added to the next block then c will remain in the memory pool and will later be joined by D. So C and D will remain in the memory pool until they are added to a new block while A and B will form part of the new block. If the miner is successful in solving the proof of work then his block will be propagated to other nodes and if it is accepted it will added to a chain. When the miner receives a new block from the network, then the software does check if the new block has transactions that are in its memory pool and will remove any transactions from the memory pool if it is in the new block.</p>

CC BY-SA 3.0
2018-02-01T19:36:29.237Z
2018-02-01T19:36:29.237Z
John Singh
<p>There is a fundamental concept called the MemPool.  It is the pool, stored in memory, of all transactions that have not yet been included in a block but are apparently eligible for inclusion.</p>

<p>You can see the size of the MemPool on a site like <a href="https://blockchain.info/unconfirmed-transactions" rel="nofollow noreferrer">Blockchain.info</a>.</p>

<p>Unlike the Blockchain, where everyone is working off a single agreed upon chain, the mempool may differ from node-to-node.  Not all nodes may have all transactions, and different nodes may choose to discard a transaction for various reasons.</p>

<p>When a miner seeks to make a new block, they pick the most desirable transactions from their available mempool (typically, the ones with the highest fees, but other considerations may factor in).  When a block is successfully created, those transactions are removed from the mempool, while the remainder of the pool is eligible to be included in the next block.</p>

CC BY-SA 3.0
2018-02-01T20:11:07.200Z
2018-02-01T20:11:07.200Z
abelenky
<p>Let's say a miner pulls from the node the available transactions to be included in the next block. He receives transactions A, B and C. For whatever reason he discards transaction B and so he mines a block that includes only A and C. Meantime, before the miner pushes the new block, the node has received a new transaction D.</p>

<p>What happens with the transactions B and D? I suppose the node verifies which transactions were not included in the mined block and keeps them available for the next block, is that correct?</p>

<blockchain><mining-theory>
What happens with the transactions a miner didn't include in a block?
daniel sp
# What happens with the transactions a miner didn't include in a block?

(Asked by: username_0 on 2018-02-01)

Let's say a miner pulls from the node the available transactions to be included in the next block. He receives transactions A, B and C. For whatever reason he discards transaction B and so he mines a block that includes only A and C. Meantime, before the miner pushes the new block, the node has received a new transaction D.

What happens with the transactions B and D? I suppose the node verifies which transactions were not included in the mined block and keeps them available for the next block, is that correct?

**Tags:** blockchain, mining-theory


---

## 2 answers

### Answer by username_1 on 2018-02-01. Score: 5

Transactions A,B,C will be validated and added to the miners memory pool just like any other node does. If A and B are the only ones added to the next block then c will remain in the memory pool and will later be joined by D. So C and D will remain in the memory pool until they are added to a new block while A and B will form part of the new block. If the miner is successful in solving the proof of work then his block will be propagated to other nodes and if it is accepted it will added to a chain. When the miner receives a new block from the network, then the software does check if the new block has transactions that are in its memory pool and will remove any transactions from the memory pool if it is in the new block.


---

### Answer by username_2 on 2018-02-01. Score: 3

There is a fundamental concept called the MemPool. It is the pool, stored in memory, of all transactions that have not yet been included in a block but are apparently eligible for inclusion.

You can see the size of the MemPool on a site like [Blockchain.info](https://blockchain.info/unconfirmed-transactions).

Unlike the Blockchain, where everyone is working off a single agreed upon chain, the mempool may differ from node-to-node. Not all nodes may have all transactions, and different nodes may choose to discard a transaction for various reasons.

When a miner seeks to make a new block, they pick the most desirable transactions from their available mempool (typically, the ones with the highest fees, but other considerations may factor in). When a block is successfully created, those transactions are removed from the mempool, while the remainder of the pool is eligible to be included in the next block.


---

