6

This question already has an answer here:

I have attempted to transfer 0.5BTC from my personal wallet to Coinbase and it's been 5 days since I initiated the transfer. It is still pending. I started reading about this and learned that there is no guarantee in the bitcoin system to actually have any particular transaction verified. The transaction volume is high right now and transactions with higher fees get higher priority. And transactions with low fees get low priority and may not EVER get verified (or mined) before being dropped from the system. Is this true? That's a huge flaw in the system if it is. how can any kind of commerce happen with this "feature"?

marked as duplicate by Chak, remedcu, alcio, Andrew Chow Dec 20 '17 at 16:33

This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.

  • There is also no official mempool, so technically each node can have their own policy on how long to retain a transaction. However nodes do get restarted from time to time, so the mempools do get cleared eventually. – Chak Dec 19 '17 at 23:55
  • You can also see here that the default mempool expiration time for Bitcoin Core got increased from 3 days(Bitcoin Core 0.13) to 2 weeks(Bitcoin Core 0.14). – Chak Dec 19 '17 at 23:58
  • 1
    My questions still stands as follows. Is there a guarantee that a transaction WILL get verified? If the transaction lingers unverified for a long time and then gets dropped, then this is not a very useful method of transacting business, is it? If I am beholden to some god-like entities (miners) for my transaction to be verified, then how is this better than central banks? – Vladimir Ferdman Dec 20 '17 at 0:06
  • Bitcoin does not have, and cannot have a guarantee that a transaction will get verified. There is limited capacity, and possibly infinite demand. Miners have discretion to include whatever they want in blocks, and if you want to have your transaction included you'll need to incentivize them. However, you can always re-issue a transactions with a higher fee (see CPFP or BIP125), or just wait. – Pieter Wuille Dec 20 '17 at 0:26
  • 1
    @Chak I disagree this is a duplicate. The fact that transactions expire from the mempool is an implementation detail that does not affect the question of whether transactions are guaranteed to confirm. They weren't before expiration was implemented. – Pieter Wuille Dec 20 '17 at 0:39
8

Transactions with low fees get low priority and may not EVER get verified (or mined) before being dropped from the system. Is this true?

Yes. However they can be resent, potentially with a higher fee.

That's a huge flaw in the system if it is.

Matter of opinion.

How can any kind of commerce happen with this "feature"?

You have to think about things a little differently. Sending the transaction isn't the end of the story; confirmation is. The sender has to be responsible for monitoring the progress of the transaction until it is confirmed, and to be willing to either increase the fee or eventually give up on the transaction as no longer economical. Likewise, the recipient needs to not assume that a transaction is final as soon as it's sent; instead, they have to wait until it is confirmed before shipping goods or services. Escrow services can help with this, playing a role similar to that of a credit card company.

I think everyone wishes the situation were simpler and that we had a system where nobody had to wait to have their transactions confirmed. But we don't yet have such a system, and there doesn't seem to be any obvious design that would solve this problem while remaining scalable, decentralized, and reasonably easy to transition. In the meantime, however, despite your concerns, an awful lot of commerce can and does happen with Bitcoin as it is. People consider the limitations and adapt accordingly.

I am beholden to some god-like entities (miners) for my transaction to be verified, then how is this better than central banks?

Miners aren't centralized. Anyone who buys appropriate hardware can be a miner. So there are lots of miners competing to confirm your transaction, and you can expect that it will be confirmed just as long as you offer enough of a fee. With a central bank or credit card company, they can block your transaction for non-economic reasons: you come from a country they don't like, your credit rating isn't good enough, etc, etc. In that case you might not be able to make a transaction at all, or you might have to pay more than other people receiving similar service.

In other words, transaction confirmation isn't necessarily designed to be cheap or fast, but it is designed to be fair.

  • 1
    Miners aren't centralized - this is not really true. 3 companies are responsible for over 50% of all bitcoin mining in the world. I would consider that very centralized – Daniel Dec 20 '17 at 8:30

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