CPFP Carve-Out for Fee-Prediction Issues in Contracting Applications (eg Lightning)



Summary:

A recent release candidate for Bitcoind 0.19 includes a carve-out rule, paving the way for more robust Child Pays for Parent (CPFP) of on-chain contracts. The rule has been added to GitHub in an attempt to pave the way for more robust CPFP of on-chain contracts (Lightning commitment transactions). Johan TorĂ¥s Halseth is questioning whether the special case rule should have been relaxed a bit to avoid adding a CSV to all outputs. Instead, he suggests letting the rule be that the last transaction which is added to a package of dependent transactions in the mempool must not have more than one unconfirmed parent. However, this would allow an attacker to exceed the MAX_PACKAGE_VIRTUAL_SIZE limit in some cases, so it's unclear if this is a problem with the current mempool acceptance code in Bitcoind. Matt Corallo argues that the fact there is a size limitation on the transaction that spends for carve-out purposes only effects how many other inputs/outputs can be added, but doubts its ever going to be a large enough number to matter.


Updated on: 2023-05-23T01:43:15.308032+00:00