Skip to main content
16 votes

What is meant by transaction 'pinning'?

Transaction pinning happens when: I broadcast a transaction that signals opt-in RBF the transaction does not get confirmed because the feerate is too low someone else broadcasts a new (child) ...
jnewbery's user avatar
  • 1,060
15 votes

Replace-by-Fee vs Child-pays-for-Parent?

Replace-by-fee means transactions spending the same coin to the same addresses are not considered double-spends by the network and are still relayed, as long as they pay a higher fee than the ...
maservant's user avatar
  • 1,041
11 votes
Accepted

When closing the channel for LN - how to calculate the fee for the blockchain transaction?

If worried about the original closing transaction having too high of fees: The signed closing transaction that you're worried about (with too high of fees) has not yet been broadcast to the network, ...
Ryan McGeary's user avatar
10 votes
Accepted

How to disable RBF in Bitcoin Core?

walletrbf=0 only disables RBF when creating transactions through wallet RPCs such as sendtoaddress, sendmany or sendall. If you use the low-level RPC createrawtransaction, you need to either set the ...
Vojtěch Strnad's user avatar
8 votes
Accepted

Can RBF be used to change the value of a transaction?

However, is it possible to use RBF to change the value of the transaction or zero value (in case of cancellation)? Yes, there is no restriction on transactions only changing the fee. In fact, that's ...
Pieter Wuille's user avatar
7 votes
Accepted

Why doesn't RBF include restrictions on the outputs?

Why didn't the RBF specification include additional constraints on the replacing transaction, such as that it would need to contain the same outputs (with at least the original output amounts) as the ...
Ava Chow's user avatar
  • 72.2k
7 votes
Accepted

Is it possible to set RBF as always-on in bitcoind?

You're looking for walletrbf=1. You can configure bitcoind to always create transactions that signal replaceability by using the -walletrbf startup option or setting walletrbf=1 in the config. ...
Murch's user avatar
  • 77.9k
7 votes
Accepted

What is the problem with the recent "One-Shot Replace-by-Fee-Rate" Proposal?

TL;DR: Due to the two asymmetric sets of rules for replacement, a total of five transactions is sufficient to make a cycle of replacements that beat each other in turn. This allows an attacker to ...
Murch's user avatar
  • 77.9k
6 votes
Accepted

What is the recommended sequence for signalling RBF?

The only other relevance of the nSequence field is as relative locktime (in version 2 transactions); see BIP 68. If you do use relative locktime, they will determine the value of nSequence. If you ...
Pieter Wuille's user avatar
6 votes
Accepted

Sequence number semantics

If you're creating a version 2 transaction with the disable flag not set, then by definition the whole nSequence value will be less than 0xFFFFFFFE (because it will be at most 0x7FFFFFFF). This ...
Pieter Wuille's user avatar
6 votes
Accepted

Why some transactions disappear from the mempool?

Skimming the source code, I found the following reasons for a transaction to be removed from the mempool: It was included in a block A conflicting transaction (i.e. one which spent at least one of ...
Nate Eldredge's user avatar
6 votes
Accepted

What happens when two or more transactions are covered ("hit") by RBF?

For a replacement to be accepted into the mempool, it has to improve the mempool for miners. Therefore, it has to pay more fees than all the ousted transactions, additionally must pay for its own ...
Murch's user avatar
  • 77.9k
6 votes
Accepted

How is the total number of transactions that will be replaced calculated in this case?

The rule implemented in Bitcoin Core today (as of version 26.0) is that the sum of the number of descendants, counted over all conflicted transactions, cannot exceed 100. In your example, that number ...
Pieter Wuille's user avatar
5 votes
Accepted

What incentive do miners have to respect the Replace-By-Fee flag?

Disrespecting it would require them modifying their software, which has ongoing administrative costs. Otherwise, there any incentive within the system to behave otherwise. Willfully not taking income ...
G. Maxwell's user avatar
  • 7,727
5 votes
Accepted

Replaceable transaction or Non-replaceable. How can I identify it from raw transaction?

From BIP-125 Opt-in Full Replace-by-Fee Signaling: This policy specifies two ways a transaction can signal that it is replaceable. Explicit signaling: A transaction is considered to have ...
sr_gi's user avatar
  • 3,260
5 votes
Accepted

Is there a way to allow use of unconfirmed RBF outputs in transaction building?

Bitcoin Core will happily spend RBF marked inputs it doesn't avoid them much less prohibit them. Perhaps you're being confused by the fact that it will not spend an unconfirmed input created by a ...
G. Maxwell's user avatar
  • 7,727
5 votes

Is it possible to send to another address using replace-by-fee in either Bitcoin Core or Electrum?

Such a transaction is standard and would relay. However neither the Bitcoin Core wallet (via the bumpfee command) nor the Electrum wallet (via the GUI) would create such transaction. More information ...
Antoine Poinsot's user avatar
5 votes
Accepted

A question about CPFP relaying policy

Correct. tx0 is removed, and tx0child is "invalid" because it spends a UTXO that does not exist in the current chain or mempool. This could change in the future with package RBF and package ...
glozow's user avatar
  • 313
5 votes

What are the arguments in the `mempoolfullrbf` debate?

Replace-by-fee (RBF) is the ability to broadcast, propagate and ultimately get a replacement transaction in a mined block instead of the original competing transaction that you originally broadcast. ...
Michael Folkson's user avatar
5 votes
Accepted

How do I perform a RBF transaction through Bitcoin Core?

If you're using the GUI, head over to the "Transactions" tab, right-click the pending transaction and choose "Increase transaction fee". If you're using bitcoin-cli, use the ...
Vojtěch Strnad's user avatar
5 votes
Accepted

Stuck transaction with enough fee rate

Your replacement transaction pays 30 sat/vB, but the minimum fee rate to get into a block has been over 40 sat/vB for a whole day now (which is quite rare). I recommend checking mempool.space to find ...
Vojtěch Strnad's user avatar
5 votes
Accepted

What types of RBF exist and which one does Bitcoin Core support and use by default?

The original software release included a mechanism that allowed transactions with a higher sequence on inputs to supersede transactions with a lower sequence. This mechanism was not incentive-...
Murch's user avatar
  • 77.9k
5 votes

How is the total number of transactions that will be replaced calculated in this case?

One of the rule for the transaction replacement (RBF) is that the number of original transactions (directly conflicting transactions + their descendants) can't exceed 100. This is a non-equivalent ...
Murch's user avatar
  • 77.9k
5 votes
Accepted

Why does RBF rule #3 exist?

Rule 4 is indeed strictly stronger than rule 3. It being two rules might be a simple carry-over from BIP125, as it was written from the implementation (and not the other way around). Under this ...
Antoine Poinsot's user avatar
4 votes

Low fee Electrum wallet transaction disappeared, now when I increase the fee it seems to be rejected as a double spend

I faced a similar issue and found this reddit post quite helpful. I'm not a bitcoin expert but I will write an answer describing what I think is happening, since there are no other answers yet. When ...
dimyG's user avatar
  • 141
4 votes
Accepted

What restrictions are there to the application of opt-in RBF?

What restrictions are placed on RBF in the deployed "opt-in RBF" variant? BIP-125: Opt-in Full Replace-by-Fee (RBF) Signaling specifies how to declare transactions replaceable until they are ...
Murch's user avatar
  • 77.9k
4 votes
Accepted

Is "inherited" replace-by-fee signaling implemented as described in BIP125?

The answer to this question is: no, inherited signaling is not currently implemented in Bitcoin Core as described in BIP 125. In May 2021, Antoine Riard discovered the missing implementation could be ...
pinhead's user avatar
  • 5,184
4 votes
Accepted

Who bears the transaction fee for settling HTLC in Lightning Network?

TL;DR answer: The fee for the HTLC is covered by whoever claims the output The fee for the commitment transaction are always covered by the party who opened the channel Sorry to say that but I ...
Rene Pickhardt's user avatar
4 votes
Accepted

Why isn't Replace by fee default for all transactions?

It's been over six years and I've done entirely too little research to state the below with confidence, but what I can roughly piece together quickly between cursory research and from what I remember: ...
Murch's user avatar
  • 77.9k
4 votes
Accepted

How is it possible to bypass bip125#2?

Replacement transaction using unconfirmed inputs Which from what I deduce, it basically means that a replacement transaction can only have one input of an unconfirmed transaction output. Is my ...
dunxen's user avatar
  • 86

Only top scored, non community-wiki answers of a minimum length are eligible