1

I am wondering who can attach dependent transactions to a transaction not confirmed and is in the Mempool. Is that the sender or the receiver?

Assume Alice wants to send 20 BTC to Bob. Her transaction is still waiting in the Mempool. Can Alice depend on another transaction for this one? Or can Bob do that?

What are the incentives?

Thank you

4
  • 1
    Is your question about Child Pays For Parent (CPFP)? Your wording is a little confusing, you cannot "attach dependent transactions" to an existing transaction, you can only make your transaction depend on it (the inverse relation). Sep 17, 2022 at 18:47
  • Thanks for your response. I want to know how descendent and ancestor fields are created in Mempool per transaction. Each has a fee, size and count field. Based on your answer, it means Bob(receiver) can depend on a new transaction to the previous one. does depending a transaction need some kind of permission? Thank you
    – Motiv
    Sep 17, 2022 at 19:18
  • What exactly do you mean by Mempool? The website mempool.space? Sep 17, 2022 at 19:20
  • Mempool: Mempry pool A waiting pool in which submitted transactions are waiting for the confirmation of the miner
    – Motiv
    Sep 17, 2022 at 19:20

1 Answer 1

3

A transaction is dependent on all transactions whose outputs are spent, and it can only be confirmed after all its ancestors are confirmed (this can be within the same block, just in the correct order). This has a few implications:

  • If a transaction is replaced or double-spent, all its descendants become invalid, because they are now spending non-existent inputs.
  • If a descendant transaction pays a higher fee than its ancestor, this creates an incentive for miners to confirm both (this is called Child Pays For Parent or CPFP).

You can attach a dependent transaction to a transaction as long as you are the recipient of one of its outputs. If the transaction contains a change output, this also includes the sender. Depending on a transaction has no impact other than potentially incentivizing miners to confirm it faster.

2
  • Is there any cost associated with that? I mean, is it free for the sender to depend transaction?
    – Motiv
    Sep 17, 2022 at 21:35
  • 1
    All transactions bid with their transaction fees for the blockspace they occupy. So it depends on the amount of data in a transaction, and the feerate it's trying to achieve. If it wants to reprioritize a parent transaction it must add the additional fees to do so. So generally, a CPFP transaction will be more expensive than other transactions.
    – Murch
    Sep 18, 2022 at 0:20

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

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