Join GitHub today
GitHub is home to over 20 million developers working together to host and review code, manage projects, and build software together.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
Already on GitHub? Sign in to your account
DevGuide: Add Short Subsection About The Memory Pool #449
Conversation
|
Thanks! This text is clear and easy to understand. Maybe the people who are interested might point out exactly what they think is worth mentioning. In case this creates some inspiration, perhaps it would be interesting to mention what happens to the mempool when there's a block chain reorganization (short and long forks). |
|
@saivann describing the mempool during a reorg is an excellent idea! I'll research exactly what happens and add that to this PR. Thanks! |
luke-jr
and 2 others
commented on an outdated diff
Jun 11, 2014
| {% endautocrossref %} | ||
| +#### Memory Pool | ||
| + | ||
| +{% autocrossref %} | ||
| + | ||
| +Full peers keep track of unconfirmed transactions which are eligible to | ||
| +be included in the next block. This is essential for miners who will |
saivann
Contributor
|
luke-jr
commented on an outdated diff
Jun 11, 2014
| {% endautocrossref %} | ||
| +#### Memory Pool | ||
| + | ||
| +{% autocrossref %} | ||
| + | ||
| +Full peers keep track of unconfirmed transactions which are eligible to | ||
| +be included in the next block. This is essential for miners who will | ||
| +actually mine some or all of those transactions, but it's also useful | ||
| +for any peer who wants to keep track of unconfirmed transactions, such | ||
| +as the receiver of a payment. |
luke-jr
Contributor
|
luke-jr
commented on an outdated diff
Jun 11, 2014
| +#### Memory Pool | ||
| + | ||
| +{% autocrossref %} | ||
| + | ||
| +Full peers keep track of unconfirmed transactions which are eligible to | ||
| +be included in the next block. This is essential for miners who will | ||
| +actually mine some or all of those transactions, but it's also useful | ||
| +for any peer who wants to keep track of unconfirmed transactions, such | ||
| +as the receiver of a payment. | ||
| + | ||
| +Because unconfirmed transactions have no permanent status in Bitcoin, | ||
| +Bitcoin Core stores them in non-persistent memory, calling them a memory | ||
| +pool or mempool. When a peer shuts down, its memory pool is lost except | ||
| +for any transactions stored by its wallet. This means that never-mined | ||
| +unconfirmed transactions tend to slowly disappear from the network as | ||
| +peers restart. |
luke-jr
Contributor
|
luke-jr
commented on an outdated diff
Jun 11, 2014
| +be included in the next block. This is essential for miners who will | ||
| +actually mine some or all of those transactions, but it's also useful | ||
| +for any peer who wants to keep track of unconfirmed transactions, such | ||
| +as the receiver of a payment. | ||
| + | ||
| +Because unconfirmed transactions have no permanent status in Bitcoin, | ||
| +Bitcoin Core stores them in non-persistent memory, calling them a memory | ||
| +pool or mempool. When a peer shuts down, its memory pool is lost except | ||
| +for any transactions stored by its wallet. This means that never-mined | ||
| +unconfirmed transactions tend to slowly disappear from the network as | ||
| +peers restart. | ||
| + | ||
| +Transactions which a peer will not relay or mine may still be added to | ||
| +its memory pool, possibly in modified form. This can allow the peer to | ||
| +refuse double spends or child transactions, although this behavior is not | ||
| +used in Bitcoin Core as of this writing. |
luke-jr
Contributor
|
|
@luke-jr commit 847084b addresses your feedback. (Thanks!) Summary:
|
|
@harding Thanks! LGTM |
|
@saivann thanks! If no critical feedback is received, I will merge this sometime after 04:00 UTC Friday. |
harding commentedJun 11, 2014
The memory pool gets discussed quite often, but my research didn't turn up anything particularly interesting about it, so this ended up being a short subsection.