This pull request was mentioned in the thread: "Proposal: Package Mempool 
Accept and Package RBF" however I am not sure if everyone would have read all 
the emails if they were not interested in packages. Also not possible to keep 
track of each pull request in Bitcoin Core repository.

PR: https://github.com/bitcoin/bitcoin/pull/23121

I came across this pull request while reviewing few others and found the 
details in comments interesting. I think everyone who is using Bitcoin and RBF 
should be aware of this bug. I won't add my opinions or comments, copying few 
lines from PR:

> However, Example N shows how this strategy can cause us to accept an 
> replacement transaction that is actually less economical to mine than the 
> original. Assume all transactions have a vsize of 100vB. A user wants to 
> replace A, which has an ancestor score of 10sat/vB, with transaction C. 
> Suppose they want to spend an unconfirmed output from transaction B, which 
> has an ancestor score of 1sat/vB (maybe their wallet doesn't have enough 
> funds to provide a higher fee using only confirmed inputs). BIP125#2 prevents 
> scenario N1, where the inclusion of another unconfirmed input means C has an 
> ancestor score of 8sat/vB and thus less economical to mine than A. However, 
> it does not prevent scenario M2, where the user splits off a 1-input 1-output 
> transaction, C*, in order to be able to include the output from B. This 
> causes us to incorrectly accept C (7.5sat/vB including its parent B) in favor 
> of A (10sat/vB).


-- 
Prayank

A3B1 E430 2298 178F
_______________________________________________
bitcoin-dev mailing list
bitcoin-dev@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev

Reply via email to