8

I've heard the term transaction 'pinning' several times, but I'm not sure exactly what it refers to.

9

Transaction pinning happens when:

  1. I broadcast a transaction that signals opt-in RBF
  2. the transaction does not get confirmed because the feerate is too low
  3. someone else broadcasts a new (child) transaction spending one of the outputs of my transaction
  4. I now can't bump the fee on the transaction unless I include a fee greater than that of the combined original transaction + the child transaction (BIP 125, rule 3).

If the child transaction in (3) is large (eg a commercial service sweeping up lots of transaction outputs), then the total fee that I'd need to pay for a valid RBF would be very large.

In this scenario, my original transaction has been 'pinned' by the child transaction.

Russell O'Connor has proposed changing the RBF policy rules to alleviate this problem.

  • Wouldn't the child transaction trigger Child Pays For Parent in most cases? – Sam Jones Jan 20 at 20:18
  • @SamJones - that depends. Child Pays For Parent is where a child transaction has a higher fee-rate than the parent, thus increasing the average fee-rate across the parent-child package and making it more attractive for a miner to include both in a block. In the example above, the child transaction might have a lower fee-rate, so it doesn't increase the average fee-rate of the package. Instead it is a large transaction with a high absolute fee. Any replacement transaction for the parent needs to exceed the absolute fee of the replaced transactions. – jnewbery Jan 28 at 18:45

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.