Subject: Re: [bitcoin-dev] Why not Child-Pays-For-Parent?

From: Dan Bryant <[email-masked]>
Date: Fri, 10 Jul 2015 12:16:40 -0500

On Fri, Jul 10, 2015 at 11:31 AM, Jeff Garzik <[email-masked]> wrote:
> This is a good explanation but it does not address reachability.  TX_a, the
> first tx sent out on the network, presumably has insufficient fee to get
> mined - which also means it did not necessarily even reach all miners.
>
> Simply sending out TX_b with added fee does not guarantee that nodes
> suddenly have TX_a, which they may have ignored/dropped before.

True... there are two propagation thresholds... "-minrelaytxfee"
(defaults to 1000 sotoshi/kbyte) and "relaypriority" (defaults to
True).  If -relaypriority is True, then items with a priority above
57600000 (currently <ref1>) will still be relayed, even if their TxFee
is below MinRelayTxFee.

Therefore even if miners are using bitcoind rules for mempool tx
creation, they can still configure how and what they propagate.

The flip-side of this is that a transactions priority will go up the
longer it ages (in the mempool).  So it would be possible (if
relaypriority was on) for even a lowfee transaction to become
relayable eventually simply based on relaypriority

ref1: https://en.bitcoin.it/wiki/Transaction_fees

On Fri, Jul 10, 2015 at 12:02 PM, Justus Ranvier
<[email-masked]> wrote:
> CPFP is initiated by the recipient of the parent transaction, and so if
> the recipient is creating this transaction in the first place they must
> have a copy of the parent transaction which can/should broadcast at the
> same time.
>
> If the child reaches a CPFP miner, then presumably the parents made it
> as well (any path between the sender and the miner that doesn't relay
> the parent should reject the child as trying to spend non-existent
> coins), so both of the transactions can be mined at the same time.

If the recipient is running a full node with incoming connections.
I'm not sure if SPV clients rebroadcast both spend and receive
transactions.