Mempool

From CryptoWiki

Revision as of 08:55, 23 January 2022 by 5imp5on (talk | contribs) (1 revision imported)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Basics

  • Aka Memory Pool or Transaction Pool
  • From the Ethereum 2.0 Knowledge Base (11-2020):

"Every signed transaction visits the Mempool first, which can be referred to as the waiting room for transactions. During this period, the transaction status is pending. Depending on the chosen gas fee for the transaction, miners pick the ones that return them the most value first. If the network is highly congested (=many pending transactions), there's a high chance that new transactions will outbid(gas fees) older transactions, leading to unknown waiting times."

"A ‘mempool’, or Memory Pool, is a pool of transactions that haven’t been included into their respective blockchain. When you are watching your transaction pending on Etherscan, your transaction is in Ethereums’s mempool.

When you make a transaction on Ethereum, before it’s formally included in the chain by miners (validators, in PoS), you broadcast it to an Ethereum node. This Ethereum node broadcasts it to its peers, and through this process, all Ethereum nodes are aware of your signed transaction.

Rational miners prioritize the transactions with the highest fee paid, as this is how they maximize their profits. Obviously, it makes sense to include those who are willing to pay more first."

"When a transaction has been conducted over a network, it is transmitted and held in what is known as the Mempool (Memory pool) until a cryptocurrency miner picks it up and includes it in the next block.

The Mempool consists of pending transactions that have occurred over a cryptocurrency’s network and are therefore awaiting approval by a cryptocurrency miner. Each node on a cryptocurrency network operates their own Mempool, and thus will have their own unique size. The size of a node’s Mempool is typically represented as the unit of memory, megabyte (MB).

As there are often thousands of transactions being held in the Mempool, it becomes unclear exactly which transaction miners should select to be included in the next block. Even though the goal is to have all transactions include on the blockchain, one method of getting your transaction included quicker, is to pay a higher fee. By paying a high fee on a transaction, the miner becomes incentivized to include your transaction in the next block rather than a transaction with a much lower fee. This is because miners receive fee payments on each transaction that they add to the blockchain, and therefore, miners will want to maximize the amount of money that they earn. However, the issue with this method is two-fold:

  • Long confirmation times if you pay a low fee
  • Microtransactions are not possible (in this piece they are talking mostly about Bitcoin (BTC))

Long confirmation times becomes the obvious problem with a fee incentivized system. Failure to pay a high enough transaction fee results in a miner disregarding your transaction in favour of a higher paying one. However, this is not to say that your transaction will never get confirmed, it may just take hours, or even days to do so. Failure to pay a fee at all risks your transaction being viewed as a “spam transaction” by the network, and therefore taken out of the Mempool entirely.

Microtransactions are defined as small value transactions and can be classified as anything under $10. Buying a cup of coffee, paying for parking and catching a bus can all be classed as a microtransaction. However, due to the inherently low value of conducting a microtransaction, it makes no sense to pay fees on them because you often end up paying more in fees than for the actual item or service itself! As a result, a cryptocurrency that aims to be used as a currency for everyday transactions can not realistically have fees.

The Mempool is prone to fluctuations in size depending how many pending transactions are awaiting confirmation by a miner. Transaction backlog is known to be a frequent issue for a cryptocurrency experiencing large transactions volume across its network. Backlogs tend to occur because there is a limit on the number of transaction that can be included in a block, however, there is no limit on the number of transactions that can occur at any given time. The Mempool essentially becomes the bottle neck of network and it becomes very important that it is properly managed."