Bitcoin Forum

Bitcoin => Development & Technical Discussion => Topic started by: Jet Cash on December 19, 2016, 08:38:50 AM



Title: Would it help to have a second mempool?
Post by: Jet Cash on December 19, 2016, 08:38:50 AM
One of the factors affecting transaction confirmation times and fee sizes is the size and complexity of transactions. A large number of micro-transactions that are being collated into one payment can affect the time taken to add the set into a block. If there was a second mem pool for the collation of records, it would enable users to submit far simpler transactions that miners may be prepared to give priority. Micro-transactions can arise from a number of sources - charity donations and faucets are two that spring to mind. If a wallet holder was allowed to consolidate these fees into a single transaction for a zero fee, then this could speed up payment confirmations for normal trading transactions. I would suggest that this second mem pool could have a much lower priority, with confirmations taking days rather than minutes.

I would suggest that transactions for this pool would have the following characteristics.

- All inputs are for the same, or a linked wallet.
- No partial spend is allowed
- No fee for the transaction
- All inputs will need to have been confirmed at least 10 times.
- No complex payment conditions associated with inputs or outputs.

Use of this pool could be attractive to three types of wallet holders.

- Investors
- Receivers of large numbers of micro-transactions
- Operators of side chains accepting PoS deposits.


Title: Re: Would it help to have a second mempool?
Post by: ranochigo on December 19, 2016, 01:33:44 PM
It would be rather hard. The mempool would require even MORE memory on the clients since it does not require a fee and everyone can spam it up.

The complexity of the transaction does not really increase the size significantly, simple features like nlocktime just changes the last few numbers of the raw transaction.

Users are definitely allowed to consolidate inputs into a transaction that does not include a fee, just that with the current network load, getting it confirmed is pretty much impossible. Implementing the second mempool will not increase the chances of normal users having their transactions getting included into the mempool. It would in fact, decrease it since the transaction itself will occupy several kilobytes and it has to be included in a transaction.

Priority is basically determined by the fees nowadays or in the free transaction policy, the coin age, size and number of inputs are considered. A free transaction would be considered to have a lower priority than a transaction that pays fee since most miners include transactions with fees first. Free transactions have to meet a specific priority before they are being relayed by reference nodes.

Instead of having another mempool which is extremely difficult to implement (to my knowledge), someone can create a website where people are able to submit their signed raw transaction and any interested miner may be interested to pick it up and confirm it. It won't stress the mempool out and it would ensure that the transaction is visible.


Title: Re: Would it help to have a second mempool?
Post by: Jet Cash on December 19, 2016, 05:53:18 PM

Instead of having another mempool which is extremely difficult to implement (to my knowledge), someone can create a website where people are able to submit their signed raw transaction and any interested miner may be interested to pick it up and confirm it. It won't stress the mempool out and it would ensure that the transaction is visible.

That's an interesting idea, and I agree it would be better than a second mempool. Maybe a miner could get advertising revenue from ads posted on the site for supporting the concept. This would provide alternative revenue, and may make free transactions sustainable.