5

I can't find anything in the web about that topic. Do all the miners have one global pool filled with transactions, i. e. Miner 1 takes Transaction 1 into his candidate block, so Transaction 1 won't be in the transaction pool anymore. Or does each miner has a local pool filled with transactions, so that each miner can take Transaction 1 into his transaction pool.

If my question is unclear, I will try to describe it better. I hope someone knows a good reference to that topic.

0
2

Since OP has asked for a specific reference, I'll copy some relevant text from the Mastering Bitcoin reference book. I cut some of the less relevant info out, and added bolded emphasis that is relevant to OP's question:

From chapter 8 - Transaction Pool:

Transaction Pools

Almost every node on the bitcoin network maintains a temporary list of unconfirmed transactions called the memory pool, mempool, or transaction pool. Nodes use this pool to keep track of transactions that are known to the network but are not yet included in the blockchain. For example, a wallet node will use the transaction pool to track incoming payments to the user’s wallet that have been received on the network but are not yet confirmed.

As transactions are received and verified, they are added to the transaction pool and relayed to the neighboring nodes to propagate on the network.

...

Both the transaction pool and orphan pool (where implemented) are stored in local memory and are not saved on persistent storage; rather, they are dynamically populated from incoming network messages. When a node starts, both pools are empty and are gradually populated with new transactions received on the network.

...

Whereas the transaction and orphan pools represent a single node’s local perspective and might vary significantly from node to node depending upon when the node was started or restarted, the UTXO pool represents the emergent consensus of the network and therefore will vary little between nodes. Furthermore, the transaction and orphan pools only contain unconfirmed transactions, while the UTXO pool only contains confirmed outputs.

5

Do all the miners have one global pool filled with transactions

Different full nodes have a different version of the mempool. Transactions are broadcasted to the bitcoin network on a best effort basis. If a transaction never reaches a node, it would not include it in the mempool. It would not learn about this transaction until it is included in the block by another miner.

Miner 1 takes Transaction 1 into his candidate block, so Transaction 1 won't be in the transaction pool anymore, Or does each miner has a local pool filled with transactions, so that each miner can take Transaction 1 into his transaction pool.

The second part is correct. Every miner creates their own candidate blocks using transactions from their own mempool. In case a miner is affiliated to a managed pool, the pool operator creates a block template (by including the transactions) and sends the header to the respective miners that are attached to the pool.

3
  • Do you have some references ? Thanks for the answer! – Michael Apr 12 '19 at 11:23
  • Reference regarding what? – Ugam Kamat Apr 12 '19 at 12:03
  • Like a book, paper, or website, where the answer to my question is given. – Michael Apr 12 '19 at 13:03

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.