<oembed><type>rich</type><version>1.0</version><author_name>npub1pmw4p7tz6s8k62zrpdpxc93ajlmpxe0s03j275dcmcejv8wazz9qhe5c0r</author_name><author_url>https://nostr.ae/npub1pmw4p7tz6s8k62zrpdpxc93ajlmpxe0s03j275dcmcejv8wazz9qhe5c0r</author_url><provider_name>njump</provider_name><provider_url>https://nostr.ae</provider_url><html>📅 Original date posted:2018-01-24&#xA;📝 Original message:&gt;I&#39;m confused, the mempool only sees 1 transaction at a time, first A, then later B. &#34;the original transactions&#34;, plural, should not exist in the mempool.&#xA;&gt;&#xA;&gt;B&#39;s fee and rate needs to be larger than A&#39;s, but B will be greater than or equal to A anyway. So, just increasing the fee rate will cause a larger fee anyway.&#xA;&gt;&#xA;&gt;Am I missing something?&#xA;&#xA;Kind of. The first case is that you do the &#34;smarter&#34; type of merging, where you get an original transaction and then say add an additional output(s) to it.&#xA;&#xA;The issue with this, is from a practical perspective is _very_ complex. Because you really need to do a lot of tracking to see which of the two transactions actually confirm. And if you are promising fast payments, you can be stuck in a weird limbo state where you&#39;re waiting for the original one to &#34;safely&#34; confirm before it&#39;s safe to make a re-payment (even a non-malicious will likely contain the replacement).&#xA;&#xA;bip125 already supports this use-case, but I will suggest that the logic to deploy this is sufficiently complex that no one is going to attempt any time in the near future.&#xA;&#xA;&#xA;But &#34;retroactive transaction merging&#34; is actually pretty approachable problem for a service to implement. You just get N valid transactions you&#39;ve made, merge them into one. Strip extraneous inputs[1], and combine and alter the change amount.&#xA;&#xA;The reason this is so appealing to implement, is there is very little complexity. If the &#34;retroactive transaction merge&#34; fails, or doesn&#39;t get confirmed, it actually has no impact. If it does get confirmed, that&#39;s just pure cost-savings.&#xA;&#xA;However, the rules of bip125 currently make it (unnecessarily?) unappealing, because I can never lower the absolute amount of fees I pay. Hence I think it&#39;d be pretty sweet if they could be relaxed to support this if it can be done in a pretty risk free way.&#xA;&#xA;&#xA;&#xA;[1] Need to be very careful with that, if you&#39;re ever merging a merged transaction.&#xA;&#xA;&#xA;&gt;&#xA;&gt;&#xA;&gt;On Wed, Jan 24, 2018 at 3:44 AM, Peter Todd via bitcoin-dev &lt;bitcoin-dev at lists.linuxfoundation.org&gt; wrote:&#xA;&gt;&gt;On Tue, Jan 23, 2018 at 10:49:34PM +0000, Gregory Maxwell via bitcoin-dev wrote:&#xA;&gt;&gt; &gt; On Tue, Jan 23, 2018 at 10:19 PM, Rhavar via bitcoin-dev&#xA;&gt;&gt; &gt; &lt;bitcoin-dev at lists.linuxfoundation.org&gt; wrote:&#xA;&gt;&gt; &gt; &gt; Interesting. I didn&#39;t think about this before, but it seems like bip125 is&#xA;&gt;&gt; &gt; &gt; rather incentive incompatible right now? If we&#39;re assuming a competitive&#xA;&gt;&gt; &gt; &gt; mempool, it really doesn&#39;t seem generally rational to accept a replacement&#xA;&gt;&gt; &gt; &gt; transaction of a lower fee rate.&#xA;&gt;&gt; &gt;&#xA;&gt;&gt; &gt; BIP125 replacement requires that the fee rate increases.  The text of&#xA;&gt;&gt; &gt; the BIP document is written in a confusing way that doesn&#39;t make this&#xA;&gt;&gt; &gt; clear.&#xA;&gt;&gt;&#xA;&gt;&gt;In fact I considered only requiring an increase in fee rate, based on the&#xA;&gt;&gt; theory that if absolute fee went down, the transaction must be smaller and thus&#xA;&gt;&gt; miners could overall earn more from the additional transactions they could fit&#xA;&gt;&gt; into their block. But to do that properly requires considering whether or not&#xA;&gt;&gt; that&#39;s actually true in the particular state the mempool as a whole happens to&#xA;&gt;&gt; be in, so I ditched that idea early on for the much simpler criteria of both a&#xA;&gt;&gt; feerate and absolute fee increase.&#xA;&gt;&gt;&#xA;&gt;&gt; --&#xA;&gt;&gt;https://petertodd.org &#39;peter&#39;[:-1]@petertodd.org&#xA;&gt;&gt;&#xA;&gt;&gt;_______________________________________________&#xA;&gt;&gt; bitcoin-dev mailing list&#xA;&gt;&gt;bitcoin-dev at lists.linuxfoundation.org&#xA;&gt;&gt;https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev&#xA;&gt;&gt;&#xA;&gt;&gt;&#xA;&gt;</html></oembed>